
Javaでファイルのダウンロード機能を作成しています。
環境はWebサーバにapache、APサーバにGlassfish、連携としてmod_jk、あとはJava6を使用しています。
InpusStreamでファイルパスから取得しresponse.getOutputStream()に書き込む処理writeにて
org.apache.catalina.connector.ClientAbortExceptionが発生してしまいます。
その際にダウンロードのポップアップ(開く、保存、キャンセル)が開きますがExceptionが発生しているため保存できません。
ただしファイルのサイズによっては正常に保存できます。(ファイルサイズが500Mくらいだとダメ)
なお、ClientAbortExceptionはキャンセル押したときに発生すると思われますがそのほかにどのような場合に発生するのでしょうか?
また、対処方法を知っていましたらご教授ください。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>ファイルの容量によってapacheやmod_jkが切断することはありえるのでしょうか?
やったことがないので知りません。
単純なwrite処理だけだとflushしません。その場合、クライアントからデータが来ないように見えてしまい、
キャンセルしているのではないか?ということです。
参考URL:http://mergedoc.sourceforge.jp/tomcat-servletapi …
No.2
- 回答日時:
>org.apache.catalina.connector.ClientAbortException:java.io.IOException: パイプが切断されました。
大きなファイルの送信に時間が掛かり、KeepAliveのTimeoutに到達、そして切断されているのではないでしょうか?
この回答への補足
ファイルのサイズは500Mくらいで大きいですが実際にExceptionが発生するまでの時間は数秒です。
ファイルの容量によってapacheやmod_jkが切断することはありえるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C++によるファイル送受信プログ...
-
2GB以上のファイルを扱う方法
-
ファイルの排他について
-
openglで音楽を再生する
-
jamファイルだけが転送できませ...
-
ファイルのダウンロードが遅い
-
RPGでメッセージファイル利用
-
VB6.0 CreateObject以外のファ...
-
0バイトのテキストファイル
-
エディットボックスの内容をテ...
-
VBAで、JPG写真の撮影日時を読...
-
accessでクエリをExcelにエクス...
-
コマンドプロンプトのテキスト...
-
CSVファイルの時刻の形式について
-
ATTファイルってどうやって開け...
-
VB6.0でExcel,PDF,Word出力方法
-
CSV形式で保存するとファイ...
-
Excel で「OLE は現在使用でき...
-
WORDのVBAで差し込み印刷時、デ...
-
テキストファイルの一部分を抽...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【Excel VBA】取り込んだファイ...
-
Eclipseで検索ができなくなった
-
0バイトのテキストファイル
-
VBAで、JPG写真の撮影日時を読...
-
C++によるファイル送受信プログ...
-
main関数のコマンドライン引数...
-
【VBA】複数CSVの特定範囲を1つ...
-
ファイル作成日時と更新日時を...
-
Javaのファイルダウンロードに...
-
HTMLテキストリンクでExcelファ...
-
2GB以上のファイルを扱う方法
-
openglで音楽を再生する
-
エディットボックスの内容をテ...
-
VB2008 iniファイルの全セクシ...
-
VB6でTIFF図のプロパティを...
-
GetOpenFileName()について
-
EUCコードをSHIFT-JISに変換したい
-
タスクバーのアイコンについて
-
C++.NET 2003 「空のドキュメ...
-
【VBA】印刷マクロのループ処理...
おすすめ情報