サーブレット・JSPメモ018:Struts:Struts設定ファイルを分割した際のパス
環境
JDK 1.6.0_24
Struts 1.3.10
Struts関連の記事:
サーブレット・JSPメモ015:Struts:StrutsタグライブラリでInvalidCancelException
サーブレット・JSPメモ016:Struts:validator-rules.xml
サーブレット・JSPメモ017:Struts:Tilesの利用
モジュール分割するとモジュールごとにStruts設定ファイルを指定できる。下記は web.xml のモジュール分割の設定の例である。
<servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <init-param> <param-name>config/admin</param-name> <param-value>/WEB-INF/struts-config-admin.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
上記の設定の場合、アプリケーションルートが "http://localhost:8080/example/" の場合、adminモジュールには "http://localhost:8080/example/admin/" 以下のURLでアクセスでき、その設定ファイルは struts-config-admin.xml である。
その struts-config-admin.xml のaction要素やforward要素のパス(path属性の値ではなく実際のパスを指定する値)は /admin からの相対パスになる。
<action path="/toTestAction" type="org.apache.struts.actions.ForwardAction" parameter="/user.jsp" /> <action path="/testAction" type="chap06.TestAction" name="sample_userForm" parameter="method"> <forward name="success" path="/sub/result.jsp" /> </action>
struts-config.admin.xml の上記のようなaction要素がある場合、parameter属性の値 "/user.jsp" の user.jsp はadminディレクトリに、forward要素のpath属性の値 "/result.jsp" の result.jsp はadmin/subディレクトリになければならない。
Recent Comments