ここでは,HTTPレスポンス圧縮機能を使用する場合に必要なDDの定義について説明します。
HTTPレスポンス圧縮機能を有効にするためには,WebアプリケーションのDDに,フィルタ定義およびフィルタマッピング定義を追加する必要があります。HTTPレスポンス圧縮機能は,フィルタマッピング定義によってマッピングされたURLパターンを持つリソースに対してリクエストがあった場合にだけ有効となります。
HTTPレスポンス圧縮機能の定義は,web.xmlに指定します。
DDでのHTTPレスポンス圧縮機能の定義について次の表に示します。
表2-40 DDでのHTTPレスポンス圧縮機能の定義
設定項目 | 指定するタグ | 設定内容 |
---|
フィルタ定義 | <filter>タグ内の<filter-name>タグ | 追加するフィルタ名称を指定します。設定値は,固定値です。
- 設定値(固定値)
- com.hitachi.software.was.web.ResponseCompressionFilter
|
<filter>タグ内の<filter-class>タグ | 追加するフィルタのクラス名を指定します。設定値は,固定値です。
- 設定値(固定値)
- com.hitachi.software.was.web.ResponseCompressionFilter
|
URLパターンとHTTPレスポンス圧縮規則のマッピング | <filter-class><init-param>タグ内の<param-name>タグ,<param-value>タグ | URLパターンとHTTPレスポンス圧縮機能のマッピングを指定します。 詳細については,「2.10.4(1) URLパターンとHTTPレスポンス圧縮規則のマッピング(url-mapping)」を参照してください。 |
HTTPレスポンス圧縮規則 | HTTPレスポンスの圧縮規則として,圧縮規則名,Media-Typeと圧縮しきい値を指定します。 詳細については,「2.10.4(2) HTTPレスポンス圧縮規則」を参照してください。 |
フィルタマッピング定義 | <filter-mapping>タグ内の<filter-name>タグ | フィルタ名称を指定します。設定値は,固定値です。
- 設定値(固定値)
- com.hitachi.software.was.web.ResponseCompressionFilter
|
<filter-mapping>タグ内の<url-pattern>タグ | URLパターンやサーブレットクラスと,HTTPレスポンス圧縮フィルタのマッピングを指定します。HTTPレスポンス圧縮機能は,フィルタマッピング定義によって,マッピングされたURLパターンを持つリソースに対してリクエストがあった場合だけ有効となります。 設定値は,任意です。 |
次に示すDDの定義例を基に,DDの定義内容を説明します。
:
<filter>
<filter-name>com.hitachi.software.was.web.ResponseCompressionFilter</filter-name>
<filter-class>com.hitachi.software.was.web.ResponseCompressionFilter</filter-class>
<init-param>
<param-name>url-mapping</param-name>
<param-value>
/*=rule1;
</param-value>
</init-param>
<init-param>
<param-name>rule1</param-name>
<param-value>
*:1000;
</param-value>
</init-param>
</filter>
:
<!-- The filter mappings for Response Compression Filter -->
<filter-mapping>
<filter-name>com.hitachi.software.was.web.ResponseCompressionFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> |
<filter>タグで囲まれた部分がフィルタ定義,<filter-mapping>タグで囲まれた部分がフィルタマッピング定義となります。フィルタ定義の<filter-name>タグおよび<filter-class>タグに指定する値は,次のパッケージ名で固定です。
com.hitachi.software.was.web.ResponseCompressionFilter
次に,DDの<init-param>タグ内に定義する内容を示します。
- <この項の構成>
- (1) URLパターンとHTTPレスポンス圧縮規則のマッピング(url-mapping)
- (2) HTTPレスポンス圧縮規則
- (3) 注意事項
HTTPレスポンス圧縮機能が有効となるURLパターンと,指定したURLパターンに適用するHTTPレスポンス圧縮規則名のマッピングを指定します。
パラメタ指定時の規則およびURLパターンのマッピング規則を示します。
(a) パラメタ指定時の規則
- URLパターンは,大文字と小文字が区別されます。
- HTTPレスポンス圧縮規則名は,大文字と小文字が区別されます。
- URLパターンとHTTPレスポンス圧縮規則名は,半角のイコール(=)で区切ります。
- 複数指定する場合は,半角のセミコロン(;)で区切ります。
- 複数のURLパターンに該当する場合は,先に指定したものが使用されます。
- パラメタ値の改行,タブ,スペースは無視されます。
- パラメタ値の末尾にある半角のセミコロン(;)は無視されます。
(b) URLパターンのマッピング規則
url-mappingパラメタに定義するURLパターンには,パス一致,拡張子一致,および完全一致のマッピング規則が適用されます。それぞれのマッピング規則を次に示します。
- パス一致
URLパターンとして「/」で始まり「/*」で終わる文字列を指定した場合は,リクエストURLのコンテキストルートからの相対パスがURLパターンの「*」を除く文字列で始まっているときに,一致したとみなされます。また,URLパターンとして「/*」を指定した場合は,すべてのリクエストURLが一致したとみなされます。
- (例)
- URLパターンが「/jsp/*」では,リクエストURLのコンテキストルートからの相対パスが「/jsp/index.jsp」の場合に一致したとみなされます。
- 拡張子一致
URLパターンとして「*.」で始まる文字列を指定した場合は,リクエストURLの拡張子とURLパターンの「*.」に続く文字列と同じであるときに,一致したとみなされます。
- (例)
- URLパターンが「*.jsp」では,リクエストURLのコンテキストルートからの相対パスが「/jsp/index.jsp」の場合に一致したとみなされます。
- 完全一致
URLパターンとして「/」で始まる上記以外の文字列を指定した場合は,リクエストURLのコンテキストルートからの相対パスがこのURLパターンと完全に同じであるときに,一致したとみなされます。
- (例)
- URLパターンが「/jsp/index.jsp」では,リクエストURLのコンテキストルートからの相対パスが「/ jsp/index.jsp」の場合に一致したとみなされます。