- - PR -
キャッシュの制御
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2002-04-24 22:29
お世話になります。
Servlet+JSPで開発しているのですが IEのキャッシュ機能が原因だと思われる現象に悩まされています。 ServletクラスAのdoGetメソッドの中で、別のServletクラスBへsendRedirectする処理を行っています。 このとき、1回目の処理ではBのdoGetが実行されるのですが, 2回目以降の処理では、BのdoGetは実行されず、1回目で表示された画面がそのまま表示されてしまいます。 (そして、ブラウザで「更新」をかけると正しい画面が表示されます。) ブラウザを閉じてやり直すと、同じように1回目だけBのdoGetが実行されます。 キャッシュへの対応としては doGetメソッドで HttpServletResponse.setHeader("Pragma", "no-cache"); の指定をしています。 原因・対応策など何かアドバイスをいただければと思います。 よろしくお願いします。 使用しているブラウザはIE5.00です。 [ メッセージ編集済み 編集者: ume 編集日時 2002-04-25 14:00 ] |
|
投稿日時: 2002-04-24 23:13
Apacheの設定方法ならこれが参考になるかも。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=706&forum=12 |
|
投稿日時: 2002-04-25 08:56
キャッシュを無効にする為のレスポンスヘッダは、
"Pragma","no-cache" に加えて "Cache-Control","no-cache" も一緒にセットしてやると解消するかもしれません。 ちなみに"Pragma"ヘッダはHTTP1.0の場合のみ有効で、HTTP1.1以降では 上記の"Cache-Control"を使用する必要があるようです。 参考文献 「core Servlets and Java Server Pages(SOFTBANK)」 第7章 |
|
投稿日時: 2002-04-25 13:58
ご回答いただきありがとうございました。
"Cache-Control","no-cache" の設定を追加することで解決しました。 とても助かりました。ありがとうございました。 |
1
