public class RequestContextHandlingFilter extends Object implements javax.servlet.Filter
リクエスト処理開始時に制御情報を生成し、リクエスト処理終了時に破棄する。 制御情報の生成処理後チェインされた処理の実行中に例外が発生しても、必ず制御情報は破棄される。 制御情報の詳細は、RequestContextSupportを参照のこと。
本サーブレットフィルタを利用するには、web.xmlの設定が必要である。
【デプロイメントディスクリプタ(web.xml)の設定例】
<filter>
<filter-name>requestContextHandlingFilter</filter-name>
<filter-class>
jp.terasoluna.fw.web.rich.RequestContextHandlingFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>requestContextHandlingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
制御情報の取得のため、DIコンテナから制御情報サポートクラスを取得する。 取得するBeanIDは”ctxSupport”とする。 ただしRequestContextSupportを取得する際に利用するBeanIDをカスタマイズしたい場合は、 フィルタの初期化パラメータ「ctxSupportBeanID」に RequestContextSupportを取得するためのBean名を記述することで直接指定することができる。 通常は、初期化パラメータの指定は不要である。
【initParameterを利用したデプロイメントディスクリプタ(web.xml)の設定例】
<filter>
<filter-name>requestContextHandlingFilter</filter-name>
<filter-class>
jp.terasoluna.fw.web.rich.RequestContextHandlingFilter
</filter-class>
<init-param>
<param-name>ctxSupportBeanID</param-name>
<param-value>newCtxSupport</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>requestContextHandlingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
RequestContextSupport
コンストラクタと説明 |
---|
RequestContextHandlingFilter() |
修飾子とタイプ | メソッドと説明 |
---|---|
void |
destroy()
フィルタの破棄処理を行う。
|
void |
doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain)
フィルタ処理する。
|
void |
init(javax.servlet.FilterConfig config)
フィルタの初期化を行う。
|
public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException
init
インタフェース内 javax.servlet.Filter
config
- フィルタ設定javax.servlet.ServletException
- サーブレット例外public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
doFilter
インタフェース内 javax.servlet.Filter
request
- HTTPリクエストresponse
- HTTPレスポンスchain
- チェインされたフィルタIOException
- 入出力例外javax.servlet.ServletException
- サーブレット例外public void destroy()
destroy
インタフェース内 javax.servlet.Filter
Copyright © 2015. All Rights Reserved.