内容/目次
|
更新ログ |
WebSphere Application Server (以下、WAS) V6にて、OutputStreamを使用して(注1)クライアントからファイルのダウンロードを行う場合、Internet Explorer (以下、IE)にてファイルの保管先を特定の時間以内に確定しない場合、ファイルのダウンロードに失敗する(注2)場合があります。
特定の時間とは、WASのWebコンテナー・トランスポート・チェーンのHTTPトランスポート・チャネルに対する「書き込みタイムアウト」にて設定された値になります。(デフォルト60秒)
(注1)WASが提供するファイル・サービスを使用したファイルのダウンロードも含まれます。
(注2)不完全なファイルがダウンロードされる、ブラウザーにエラーが表示されるといった現象が発生します。
【対象】
WebSphere Application Server V6.0, V6.1 (特に以前のバージョンからWAS V6へ移行される場合、ご注意ください。)
【原因】
WAS V6からチャネル・フレームワークが採用され、HTTPトランスポート・チャネルに対して「書き込みタイムアウト」と「読み込みタイムアウト」の設定が可能になりました。
IEでは(注3)、ダウンロードするファイルの保管先の確定を行うまではデータの受信が開始されないため、TCPのバッファーとWASの書き込みバッファーが共に一杯になり、HTTPトランスポート・チャネルの書き込みタイムアウトに達した時点でエラーとなります。
(注3)Firefoxでは、保管先を確定する前であってもレスポンス・データの受信を開始するため、この問題は発生しません。
HTTPトランスポートに対するWAS V4での「出入力タイムアウト」設定、およびWAS V5での「ConnectionIOTimeout」設定(カスタム・プロパティーにて指定)では、読み込みに対してのみタイムアウトが有効であり、書き込みに対してはタイムアウトの影響を受けていませんでした。
またWASV4, V5でのこれらのタイムアウトのデフォルト値は5秒となっています。
WAS V6への移行において「書き込みタイムアウト」の設定値をWAS V4, V5と同様に小さく設定した場合には、V4, V5では問題とならないアプリケーションでも、V6ではダウンロードに失敗する可能性があります。
【対応方法】
WAS V6のHTTPトランスポート・チャネルの「書き込みタイムアウト」(デフォルト60秒)を十分な値に設定します。
【補足】
検証の結果、ダウンロードするファイルのサイズが、Webコンテナー・インバウンド・チャネルの「書き込みバッファーサイズ」(デフォルト32,768バイト)に指定された値よりも小さい場合には、この問題は発生しないことを確認しています。
【当問題のお問合せ先】
PAテクニカルサポート総合窓口
(有効なメンテナンス契約IBM番号をお持ちのお客様)
電話: 0120-557-971
受付時間: 月~金 9:00~17:00(祝日、12/30~1/3を除く)
文書情報
有効期限: 2012年1月19日
資料番号: WAS-07-002
