2008-09-01から1ヶ月間の記事一覧

RequestActionMapping, SessionActionMapping

はあ。

RedirectingActionForward

ActionRedirectに手をついてあやまれ。

PlugIn

起動時になにやらやらかすためのもの。

ForwardingActionForward

デフォルトでsetRedirect(false)するActionForward。 ActionRedirectと違って全く可愛げはない。コンストラクタ以外何もないし。

ActionServletWrapper

何のためにあるのかさっぱりわからない…。Javadoc読んでもわからない…。

ActionRedirect

ActionForwardのRedirect版。 リダイレクトパラメータは手動でセット。アンカーまでセットできちゃう。 でもどこからも使われていない…。

ActionMessages

Sessionに登録したときにメッセージを除去する指標としてaccessedを使う、と。

Action

おなじみAction。 isCancelledでGlobals.CANCEL_KEYが使われていて、CancelTagではConstants.CANCEL_PROPERTYが使われていた。なんだ?と思ったらActionContext#setCancelledが橋渡しをしていた。理由は謎。

WildcardHelper

ワイルドカードマッピングに使う。

TokenProcessor

2度押し防止機構。 サーブレットコンテナは同一セッションに対してアクセスする2つのスレッドに対し、異なる2つのHttpSessionオブジェクトを返すことができるので、同一セッション上の同期はできない、と。

ServletContextWriter

ServletContext.logを使って出力を行うためのクラス。何に使うのかは不明。

ResponseUtils

filterは文字列をHTMLとして解釈されないようにエスケープ。 encodeURLはエンコードに使うメソッドが動的に変更できるようになっている…。

RequestUtils

いろんな機能。 ActionForm作っちゃう機能はCreateActionFormとほぼ同機能。 populateはほとんどがMultipartRequestのための処理。何やってんのかはさっぱりわからない。 printableURLってなんに使うの?

ModuleUtils

ModuleConfigを取得する機能と、パスからモジュール名を取得する機能と、モジュールを切り替える機能。 モジュールを切り替えるときはメッセージリソースも一緒に切り替わる。

ModuleException

ActionMessageをあらかじめ内包している。んでExceptionHandler(Commandじゃない方)をExceptionConfigに指定しておけばそいつがこのメッセージをしかるべきスコープに登録してくれる。

MessageResourcesFactory

ただの抽象ファクトリ。

ReloadPropertyMessageResources

まあ、おまけで。HotDeployのときに使うやつ。 メッセージを取得するたびに読み込んだキャッシュを全部消して新しく取得しなおしてる。

PropertyMessageResources

メッセージリソースをプロパティファイルに求めるMessageResources。 ロケールとメッセージキーでメッセージを要求すると、「configプロパティ + "_ロケール.properties"」をパスにしてプロパティファイルを読み込み、メッセージを返す。 ロケールを指定しな…

MessageResources

メッセージリソースに関するFacadeクラス? メッセージをMessageFormatにしてキャッシュしたり、メッセージが見つからなかったときはnullを返すか見つかりません的なメッセージを返すか、メッセージをエスケープするかとかしてる。

LabelValueBean

のcollectionsにLabelValueBeanのリストを指定する。

ImageButtonBean

を使うとリクエストパラメタはIEの場合hoge.xとhoge.yが送られてくるらしい(Firefoxの場合hogeも送る)。なのでFormにString hogeってプロパティを作ってもリクエストパラメタがセットされないんだけど、hogeの型をこいつにしておけば無事セットされるとい…

ModuleConfigImpl

相当。 FormBeanConfigとかActionConfigとかForwardConfigはそのまま使わず、これを継承したサブクラスを使っている。使うサブクラスは設定できるようになっている。 ワイルドカードマッピング用の?ActionConfigMatcherを持っている。 …くらいか。

モジュールの切り替えってなに?

Action実行後にForwardしたりする場合、パスが"/"から始まっているので、そのままでは今いるモジュールにしかForwardできない。だから切り替えが必要になる、ってこと?

ActionConfig

タグに相当。 気になる機能はアクセス可能なロールを設定できる点くらいか。

ExceptionConfig

タグをインスタンス化したもの。 重要なのは継承の順番。自分がActionローカルのなら親定義をまずActionローカルから探し、次にから探す。自分がGlobalならからしか探さない。

FormPropertyConfig

タグをインスタンス化したもので、DynaActionFormのプロパティを設定するためにある。 どうでもいいが、reset属性には"post"とか、"post, get"とか指定できて、指定したメソッドのときのみリセットできる。使わないからどうでもいいけど。

BaseConfig

struts-configの各種タグをインスタンス化したもののベースになる。 主な機能はconfiguredがtrueだとimmutableになるとか、タグとかでセットされるプロパティを保持するとか、そいつの継承をするとか。

FormBeanConfig

struts-configのをインスタンス化したものだ。 このクラスで重要なのは、別のFormBeanConfigを継承可能という点とActionFormインスタンスを取得できる点。…MutableDynaClassの使いどころって?

org.apache.struts.action.ExceptionHandler

まずActionForwardを作成する。ExceptionConfigにpathが設定されていればそれで、設定されていなければActionMappingのinput属性を使用する。 次に例外をリクエストに登録するとともに、例外のメッセージをExceptionConfigのscope属性に応じたスコープに登録…

org.apache.struts.chain.commands.servlet.ExceptionHandler

ActionConfigまたはModuleConfigから発生した例外をどう処理するかを設定したExceptionConfigを探す。ExceptionConfigが見つからなければ例外をそのまま投げる。 ExceptionConfigが見つかったらそこに設定されているorg.apache.struts.action.ExceptionHandl…