クライアント性能測定スクリプトは,Webアプリケーションでの静的コンテンツ,JSP,またはサーブレットが生成したコンテンツに対して,自動的に挿入されます。
クライアント性能測定スクリプトが挿入できる条件を次の表に示します。
表9-7 クライアント性能測定スクリプトの挿入条件
項番 | 項目 | 条件 |
---|---|---|
1 | クライアント性能フィルタが受け取るServletRequest,ServletResponseの種類 | クライアント性能フィルタのdoFilter()メソッドの引数がHttpServletRequest,またはHttpServletResponseのインスタンスである場合。 |
2 | 対象のコンテンツ |
|
3 | ステータスコード | サーブレットやあとのフィルタから渡されたレスポンスのステータスコードが200である場合。 |
4 | リクエストメソッド | リクエストメソッドがGET,またはPOSTである場合。 |
5 | 適用されるHTMLの制限 | コンテンツの先頭からクライアント性能モニタ機能の設定filterSizeで指定したサイズ(デフォルトは8キロバイト)までの範囲で,次のどちらかの条件を満たしている場合。
|
6 | 出力ストリームのflush() | 出力ストリームのバッファが最初にflush()されるタイミングで,「適用されるHTMLの制限」の条件を満たすデータが出力ストリームに書き込まれている場合。 出力ストリームのバッファが最初にflush()されるタイミングで,「適用されるHTMLの制限」の条件がチェックされます。このとき,「適用されるHTMLの制限」の条件を満たすデータが,出力ストリームに書き込まれていない場合は,クライアント性能測定スクリプトは挿入されません。 |
7 | クライアント性能モニタの適用に関する設定 | リクエストURLのパスがクライアント性能フィルタの初期化パラメタignorePagesで指定したパスにマッチしない場合。 リクエストURLのパスがクライアント性能フィルタの初期化パラメタignorePagesで指定したパスにマッチする場合は,クライアント性能測定スクリプトは挿入されません。 |
8 | ブラウザの種類 | User-Agentの情報として,Internet Explorerのバージョンが6以上であることが判別できる場合。 |
9 | クライアント性能フィルタが受け取るServletResponseの状態 | クライアント性能フィルタのdoFilter()メソッドが呼ばれた時点でクライアント性能フィルタが受け取るServletResponseがコミットされていない場合。 クライアント性能フィルタのdoFilter()メソッドが呼ばれた時点で,すでにクライアント性能フィルタが受け取るServletResponseがコミットされている場合は,クライアント性能測定スクリプトは挿入されません。 |
10 | サーブレットパス | クライアント性能フィルタが動作した際,javax.servlet.ServletResponseのgetServletPathメソッドで得られるサーブレットパスが「/」で始まる文字列の場合。 サーブレットパスが「/」で始まらない文字列(空文字列など)の場合,クライアント性能測定スクリプトは挿入されません。 |