Strutsって結局何だっけ?

約300のクラスで構成される、MVCに基づくWebアプリケーションフレームワーク

パッケージ

  • action: コントローラクラスやActionFormなどのフレームワークコンポーネント
  • actions: 出来合いのActionクラスなど
  • config: Struts設定ファイルのメモリ内表現クラス
  • taglib: Strutsタグライブラリのタグハンドラクラス
  • tiles: Tilesフレームワークで使用するクラス
  • upload: ファイルアップロード・ダウンロード
  • util: 汎用ユーティリティ
  • validator: validatorを配置するためのクラス。Validatorクラスおよびインタフェース自体はStruts外のcommonsパッケージに存在

補足:struts-config.xml

構成要素は下記。

  • data-sources
  • form-beans
  • global-exceptions
  • global-forwards
  • action-mappings
  • controller
  • message-resources
  • plug-in

補足:web.xmlの設定

.doでアクセスされたら一律Strutsの世界へ飛ばす設定をする。


storefront
org.apache.struts.action.ActionServlet


storefront
*.do


サーブレットの初期化パラメータでStruts設定ファイルの指定などもできる。

補足:Validator

ValidatorはStrutsプラグインとして作られている。

補足:プラグイン

  • Pluginインタフェースを実装した任意のクラス
  • Strutsアプリケーション起動時に、ActionServletが、設定されている各プラグインのinit()を呼ぶ
  • アプリケーション停止時にdestroy()を呼ぶ

補足:その他の拡張ポイント

設定クラスも、コントローラも、アクション基底クラスも、カスタムタグも、なんでもかんでも拡張可能!

参考文献

プログラミングJakarta Struts

プログラミングJakarta Struts