2009年6月25日木曜日

Struts2 自作インターセプターでexcludeMethodsを有効にする。

インターセプターの自作で調べたことのメモ。

struts2関連でインターセプターを調べてるとstruts.xmlに

以下のようにparamのexcludeMethodsに書くとそのメソッド実行時はインターセプターは実行されないとあったので
<interceptor-ref name="validation">
<param name="excludeMethods">input,back,cancel,browse</param>
</interceptor-ref>


インターセプターを自作してこのような設定を書いてみたんですが、設定したメソッドの実行時にインターセプターが実行されてしまいました。

で、何が悪いのか調べてみたんですが、この設定を有効にするには、MethodFilterInterceptorを継承しないと駄目だということがわかりました。(試しに作ったインターセプターはAbstractInterceptorを継承してました。)

ですんで、MethodFilterInterceptorを継承して、doInterceptというメソッドに処理を記述すると上記の設定で実行しないメソッドの指定が有効になりました。

0 件のコメント:

コメントを投稿