ご注意!あくまで私の作っているWebアプリケーションを移行した場合に必要になった作業であり、
他の機能を使っている場合は他の対応が必ず必要になります。
特にキャンセルボタンの動作変更については
総本山のリリースノート
に重要な注意が載っています。
このテーマには、
このページ
がもっとも頼りになる情報源です。
●Strutsのjarの差し替え
WEB-INF/lib/*.jarは差し替える必要があります。
バージョン1.2までstruts.jar1個だったのが、
1.3では複数のstruts-***.jarに分割されているので、必要に応じて入手します。
サンプルアプリケーション(struts-examples.war)を展開して、
WEB-INF/libの下にあるJARファイルを一式持ってくるとよいです。
但し、JSTL(c:if等)の利用に関しては1.0、1.1のどちらのバージョンも使えます。
両者はURIが違うので混在できません。
サンプルアプリケーションに同梱のjstl.jar、standard.jarはJakarta Taglibs 1.0.6
(JSTL 1.0対応)なので、
既に1.1に上げている場合はJarファイルを差し替えずにそのまま使うこと。
●struts-1.2.jarをCLASSPATHに通してビルドしたライブラリは1.3で動くか?
一応動くみたいです。
●TLDの削除
WEB-INFディレクトリに struts-config_1_2.dtd、tiles_config_1_2.dtd
を置いてある場合は不要なので削除します。
●DOCTYPE宣言のバージョンアップ
struts-config.xmlは冒頭のDOCTYPE宣言を書き換える必要があります。
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
|
validation.xmlのDOCTYPE宣言も、1.1.4以前から1.3.0に書き換えます。
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">
|
但し、DOCTYPE宣言を1.3.0に書き換えると、
arg0〜arg3という旧式扱いのタグは使えないので注意が必要です。例えば、
<arg0 .../>は、
<arg position="0" .../>
と書き換えます。
●バリデーションの設定変更
WEB-INF/validator-rules.xmlはstruts-action.jarに同梱されるようになったので、
既存のファイルは削除してOKです。
代わりに、struts-config.xmlに次のように書きます。
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames"
value="/org/apache/struts/validator/validator-rules.xml,
/WEB-INF/validation.xml"/>
</plug-in>
|
●Struts TaglibのURI変更
StrutsがJakarta Projectから外れてApacheの最上位プロジェクトになったことから、
JSPの冒頭に書くStrutsの各taglibのURIは
「http://jakarta.apache.org/struts/tags-bean」
などから、
「http://struts.apache.org/tags-bean」
のように変更になりました。
これはweb.xmlのinclude-preludeを使って1個所にまとめ書きしていると移行は楽ですが、
各JSPに書いている場合は相当大変のはず…頑張ってください。
●ActionErrorはなくなりました
ActionErrorクラスは完全になくなりました。
1.2でdeprecated(旧式扱い)警告にも耐えて使っていた場合も、
今回はActionMessageに書き換えるしかない。
(first uploaded 2006/08/12 last updated 2007/01/06, URANO398)
|