- PR -

tomcatで1時間後に「ページを表示できません」と表示される

1
投稿者投稿内容
YUUSAN
会議室デビュー日: 2004/05/28
投稿数: 4
投稿日時: 2004-05-28 09:42
はじめまして。いつもこちらではお世話になっております。

strutsを使いまして、oracleにはいっているデータをテキストに出力する
プログラムのテストをしていたのですが、1時間以上かかる処理を実行すると
1時間後ブラウザに「ページを表示できません」と表示されます。
Tomcatのログをみてみたのですが、なにも出力されていなく、
そのクライアントから、同URLを再度指定しても表示されるので、
tomcatが落ちているわけでもありせん。
また2時間ぐらいたって出力データをみてみると正常に出力されております。
web.xmlでは、session-timeoutは180で、2時間ぐらい放置後、動かすと
セッションは切れてなかったので、この設定は有効になっているみたいです。
またネットワークはローカルで、ハブ1つのみです。
サーバの問題かと思い他のマシンでも試したのですが、
同等の現象がでております。(redhat9やtomcat4.1.24)
いろいろと調べているのですが、なにか情報等お持ちでしたら
教えていただけますと大変助かります。
お手数ですが、よろしくお願いします。


環境
サーバ
jdk1.4.2
tomcat4.1.30
struts1.1
oracle9.2
windows2000sp4
クライアント
IE6.0sp1
Dr.Doraemon
ぬし
会議室デビュー日: 2002/03/23
投稿数: 265
投稿日時: 2004-05-28 10:28
お疲れ様です。

現象をみる限りこれは、ブラウザの方でタイムアウトになっているのではないでしょうか?
 ようは、サーブレットの方からテキストのファイルがすべてアウトされてから画面に成功しましたなりのレスポンスを返しているのでしょうが、その作業が完了するまでレスポンスが一切戻ってこない状態になっているのではないかと思います。

 回避法としては、進捗を件数から割り出すなりして、それを逐次レスポンスしてくようにすればよいのではないでしょうか?
 たしか、JSPも、ASPのように、バッファに入れた物を処理完了時点でレスポンスするか、逐次レスポンスするかのオプションがあったように記憶しております。
YUUSAN
会議室デビュー日: 2004/05/28
投稿数: 4
投稿日時: 2004-05-28 10:58
Dr.Doraemon様、ご返信ありがとうございました。
ご指摘のとおり、その作業が完了するまでレスポンスを一切戻していないです。
実行後、CSVが作成されたURLのリンクを表示する画面を表示させてます。
大変申し訳ないですが、逐次レスポンスするかのオプション等おもいだされましたら、
教えていただけないでしょうか。
また、CSVを出力するプログラムはStrutsのActionの継承先に記述しているのですが、
進捗を表示するようなサンプルをご存知であれば教えていただけないでしょうか。
当然こちらのほうでもそちらをキーワードとして、
調べてみます。よろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)