|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.ex.web.thin.TrimRequestParameterFilter
public class TrimRequestParameterFilter
指定された正規表現パターンに基づいて、クライアントからのリクエストパラメータをトリムする。
クライアントが送信した入力値を自動的にトリミングする。 ビジネスロジックには、トリミングされた状態で入力値が受け渡される。 そのため、個別のビジネスロジックで改めてトリミングを行う必要はない。
リクエストパラメータトリム機能クライアントが送信した入力値を自動的にトリミングするサーブレットフィルタを提供する。
使用方法
クライアントの入力値を自動的にトリミングしたい場合、
Webアプリケーション設定ファイル(web.xml)で専用のサーブレットフィルタ(TrimRequestParameterFilter)を登録する。
その際、初期化パラメータとして、リクエストパラメータのトリムに使用する正規表現パターン(trimPattern)を指定する。
トリムパターンの値が未入力、無効な値の場合にはwarnレベルのログを出力し、トリムフィルタは動作しない設定となる。
以下は、リクエストパラメータ前後の全角・半角スペースを自動的に除去したい場合のtrimPatternの指定例である。
Webアプリケーション設定ファイル(web.xml)
<filter>
<filter-name>trimRequestParameterFilter</filter-name>
<filter-class>jp.terasoluna.fw.ex.web.thin.TrimRequestParameterFilter</filter-class>
<init-param>
<param-name>trimPattern</param-name>
<param-value>^[ \s]*|[ \s]*$</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name> trimRequestParameterFilter </filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Filter
コンストラクタの概要 | |
---|---|
TrimRequestParameterFilter()
|
メソッドの概要 | |
---|---|
void |
destroy()
このサーブレットフィルタを破棄する。 |
void |
doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain)
このサーブレットフィルタを実行する。 |
protected javax.servlet.http.HttpServletRequest |
getParameterTrimmedHttpServletRequest(javax.servlet.http.HttpServletRequest request)
HttpServletRequestからParameterTrimmedHttpServletRequestを構築して返す。 |
void |
init(javax.servlet.FilterConfig config)
リクエストパラメータのトリムに使用する正規表現パターンを指定して、このサーブレットフィルタを初期化する。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public TrimRequestParameterFilter()
メソッドの詳細 |
---|
public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException
javax.servlet.Filter
内の init
config
- フィルタコンフィグ
javax.servlet.ServletException
- 例外Filter.init(javax.servlet.FilterConfig)
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
multipart/form-data
でない場合、
HttpServletRequestをParameterTrimmedHttpServletRequestに置き換える。
javax.servlet.Filter
内の doFilter
request
- リクエストresponse
- レスポンスchain
- フィルターチェーン
IOException
- 例外
javax.servlet.ServletException
- 例外Filter.doFilter(javax.servlet.ServletRequest,
javax.servlet.ServletResponse, javax.servlet.FilterChain)
public void destroy()
javax.servlet.Filter
内の destroy
Filter.destroy()
protected javax.servlet.http.HttpServletRequest getParameterTrimmedHttpServletRequest(javax.servlet.http.HttpServletRequest request)
request
- リクエスト
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |