サーブレット・フィルター には、 filter という名前の新規タイプのオブジェクトが含まれています。 このオブジェクトは、要求を変換したり、応答を変更したりすることができます。
指定されたリソースまたはリソースのグループの入出力を一群のフィルターが処理できるように、 いくつかのフィルターをチェーニングすることができます。
一般的なフィルターとしては、ロギング・フィルター、イメージ変換フィルター、暗号化フィルター、 および Multipurpose Internet Mail Extensions (MIME) タイプ・フィルター (機能的には、サーブレット・チェーニングと同等のもの) があります。 フィルターはサーブレットではありませんが、両者のライフ・サイクルは非常に似ています。
フィルターは、次のように処理されます。
FilterChain は、LoggingFilter の呼び出しから開始し、 要求されたリソースの呼び出しで終了します。
このメソッドは、処理をチェーン内の次のリソース、すなわち要求されたリソースに渡します。
<filter-mapping> <filter-name>Logging Filter</filter-name> <url-pattern>/products/*</url-pattern> <dispatcher>FORWARD</dispatcher> <dispatcher>REQUEST</dispatcher> </filter-mapping>これは、要求の転送同様、フィルターがクライアントから直接要求に適用される必要があることを示しています。 また、INCLUDE および ERROR 値の追加は、フィルターがインクルードされた要求および <error-page> 要求にも適用される必要があることを示します。 <dispatcher> エレメントを指定しない場合、デフォルトは REQUEST です。
以下のインターフェースは、javax.servlet パッケージの一部として定義されます。
以下のクラスは、javax.servlet.http パッケージの一部として定義されます。