- 1.1. Strutsとは
- 1.2. ActionServlet
- 1.3. Struts設定ファイルの編集とActionクラスの実装
1.2. ActionServlet
Strutsで開発されたWebアプリケーションでは、サーブレットクラスは唯一つで「org.apache.struts.action.ActionServlet」のみです。(Tilesを使用する場合は他のサーブレットクラスを利用します。Tilesについては後の節で説明します。)Webアプリケーションに対する全ての処理を、このActionServletが受け取ります。プログラマは「WEB-INF/web.xml」にActionServletを使用する設定を行うだけで、サーブレットクラスの実装は行いません。実際のサーバでの細かい処理はActionクラスで行われ、プログラマはこのクラスの実装を行う事によりWebアプリケーションを構築します。それに関する詳細は後述します。ここではActionServletの設定について説明します。
<web-app> ... <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> ... </servlet> ... <servlet-mapping> <servlet-name>Action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> ... </web-app>
<servlet>タグでorg.apache.struts.ActionServletを使用する設定をします。その際の<servlet-name>に特に規定はありません。ActionServletは初期設定値として幾つか設定しなければならないものがありますが、以下に重要なものを示します。
config |
ActionServletの振る舞いを記述した設定ファイルをアプリケーションルートからの位置で指定します。実際の処理を担当するActionクラスとの関係や、Viewもこのファイルで指定します。デフォルト値は「WEB-INF/struts-config.xml」です。 |
---|---|
debug |
デバッグ出力のレベルを指定します。0から6の数字で指定し、6の場合は全てのログが出力されます。0の場合は出力されません。デフォルト値は0です。 |
この内configが重要で、指定された設定ファイルの内容によって、Webアプリケーションの振る舞いが決定されます。今後「Struts設定ファイル」と記載した場合には、「ActionServletのconfigで指定された設定ファイル」の事だと考えるようにして下さい。
最後に<servlet-mapping>の設定をします。この設定によってどのURLでアクセスがあった場合にActionServletが呼び出されるか決定されます。サンプルでは拡張子が「.do」の場合に呼び出される設定をしていますが、Strutsではこの設定が推奨されています。