| MAP | PageMixer ドキュメント > チュートリアル > Struts 環境における利用 > Servlet の設定 | << | >> |
本節では、 (Struts の TagLib を用いた)JSP ファイルに対応する (PageMixer を用いた)Servlet の設定方法を説明します。
本チュートリアルでは、 クラスは全てクラス名のみで表記されています。 完全な名称は以下の通りです。
PageServlet 再びPageServlet の使用/設定およびその派生クラス群に関しては、
"Servlet 環境における利用"
において説明しました。
PageMixer は、
MonoPage、LocalePage、
DefaultPage および I18NDefaultPage を利用する
PageServlet 派生クラスを、
Struts 環境用にも提供しています。
Servlet 環境用の派生クラス群と同様に、
それらもまた
MonoPageServlet、LocalePageServlet、
DefaultPageServlet および I18NDefaultPageServlet
と名付けられていますが、
これらのクラスは
jp.ne.dti.lares.foozy.pagemixer.struts
パッケージに配置されています。
web.xml の記述mainMenu.jsp の代替として
Servlet を使用する場合の設定例を以下に示します。
ロケールに応じた描画を行わない
MonoPageServlet を利用することも可能ではありますが、
この例ではロケールに応じた描画を行う
LocalePageServlet を使用しています。
<servlet>
<servlet-name>
mainMenu.page
</servlet-name>
<servlet-class>
jp.ne.dti.lares.foozy.pagemixer.struts.LocalePageServlet
</servlet-class>
<init-param>
<param-name>
forward.condition.0
</param-name>
<param-value>
pagemixer.servlet.NotLoginCondition
</param-value>
</init-param>
<init-param>
<param-name>
filter.factory.0
</param-name>
<param-value>
pagemixer.filter.UserFilter$Factory
</param-value>
</init-param>
<init-param>
<param-name>
page.location
</param-name>
<param-value>
page.mainMenu
</param-value>
</init-param>
</servlet>
:
<servlet-mapping>
<servlet-name>
mainMenu.page
</servlet-name>
<url-pattern>
/mainMenu.page
</url-pattern>
</servlet-mapping>
"NotLoginCondition" は、
認証無しで /mainMenu.page がアクセスされた場合に、
制御を "login" ページへと転送します。
しかし、これはどこへ制御を転送すればよいのでしょうか?
"login" 機能はどこにあるのでしょうか?
"login" ページの位置を
NotLoginCondition のコードに直接埋め込んでも構わないのですが、
PageMixer/Struts 連携のデモンストレーションにおける
NotLoginCondition に "login" の位置を教えるために、
context-param の
"path.logon" が使用されています。
<context-param>
<param-name>
path.logon
</param-name>
<param-value>
/logon.page
</param-value>
</context-param>
これにより、 コンパイルせずにウェブアプリケーションの設定が変更できます。
これ以外の init-param に関する詳細は、
"Servlet 環境における利用"
を参照してください。
| MAP | PageMixer ドキュメント > チュートリアル > Struts 環境における利用 > Servlet の設定 | << | >> |