S2Struts1.2.xから1.3.xへ移行する手順について、S2StrutsExampleの移行を通して説明します。
移行するために必要となるファイルはS2StrutsBlank V1.3.xに含まれていますので、あらかじめダウンロードして下さい。
S2Struts1.3.xはS2.4で動作するため、S2.3からS2.4への移行が必要です。移行は以下の手順で行います。
- jarファイルの置き換え 以下のjarファイルを置き換えてください
- s2-framework-2.4.0-beta-5-SNAPSHOT.jar
- s2-extension-2.4.0-beta-5-SNAPSHOT.jar
- diconファイルの追加 以下のdiconファイルをWEB-INF/srcへコピーして下さい
- jdbc.dicon
- convention.dicon
- 不要なdiconファイルの追加 以下のdiconファイルをWEB-INF/srcから削除して下さい
- j2ee.dicon(s2-extension-2.4.0-beta-5-SNAPSHOT.jarに含まれているため削除して下さい)
jarファイルを置き換えるとAutoRegisterを利用しているdiconファイルでエラーが発生すると思います。
これはAutoRegisterを利用した場合のコンポーネント名定義方法が変わったためです。
エラーの発生したdiconファイルをS2.4に対応するために、
先ほどコピーしたconvention.diconをincludeし、autoNamingプロパティの記述を削除して下さい。
S2StrutsExample Mod.diconの修正例を以下に示します。
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
"http://www.seasar.org/dtd/components21.dtd">
<components>
<!-- convention.diconのincludeを追加する -->
<include path="convention.dicon"/>
<component class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister">
<!-- autoNamingプロパティの記述を削除(コメントアウト)する
<property name="autoNaming">
<component class="org.seasar.framework.container.autoregister.DefaultAutoNaming"/>
</property>
-->
<initMethod name="addClassPattern">
<arg>"org.seasar.struts.examples.mod"</arg>
<arg>".*ServiceImpl"</arg>
</initMethod>
</component>
<component class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister">
<property name="instanceDef">
@org.seasar.framework.container.deployer.InstanceDefFactory@REQUEST
</property>
<!-- autoNamingプロパティの記述を削除(コメントアウト)する
<property name="autoNaming">
<component class="org.seasar.framework.container.autoregister.DefaultAutoNaming"/>
</property>
-->
<initMethod name="addClassPattern">
<arg>"org.seasar.struts.examples.mod"</arg>
<arg>".*ActionImpl"</arg>
</initMethod>
</component>
</components>
S2Struts1.3.xへの移行は以下の手順で行います。
- jarファイルの置き換え 以下のjarファイルを置き換えてください
- s2-struts-1.3.0-beta-2.jar
- s2-struts-tiger-1.3.0-beta-2.jar(Tigerアノテーションを利用している場合、置き換えてください)
- s2-struts-backport175-1.3.0-beta-2.jar(Backport175アノテーションを利用している場合、置き換えてください)
- 不要なdiconファイルの追加 以下のdiconファイルをWEB-INF/srcから削除して下さい
- s2struts.dicon(s2-struts-1.3.0-beta-2.jarに含まれているため削除して下さい)
- web.xmlの修正
- struts-config.xmlの修正
struts-config.xml、validation.xml、application.propertiesの変更がすぐに反映させるためには以下の修正が必要です。
- struts-config.xmlの修正
- app.diconの修正
- env.txtの追加
- 条件付includeで利用する環境名をenv.txtに書き、WEB-INF/srcへ追加します。
HOTdeployを利用するため環境名は「ut」とします。
これでstruts-config.xml、validation.xml、application.properties(リソースファイル)の変更が即時反映されるようになります。
Tomcatを起動し、試してください。
...
...
|