[Seasar-user:11598] Re: doOnceでIEだけ戻ってボタンがおせてしまう

Junichi Kato [E-MAIL ADDRESS DELETED]
2007年 11月 10日 (土) 14:26:50 JST


小林さん
加藤です

> DEBUG 2007-11-10 00:05:41,725 [http-8080-Processor25] BEGIN bz.hoge.hoge.web.web.example.CartUserConfirmOrderPage#doOnceOrder()
> 
> で始まる一連のログが出ていますが,二度目の
> サブミットでは出力されていません.
> このログからは doOnce〜() が毎回呼ばれると
> いうことは確認できません.
> もう一度ログをよく見直してください.
> 本当に毎回 doOnce〜() が呼ばれるのなら,それを
> 確認できるログを添付してください.

はい。ログが正しいです。

サブミットした画面にブラウザの戻るで戻って、doOnce〜()のボタンをクリックして
次画面に遷移してもページクラスはdoOnce〜()を呼ばれていませんでした。
いろいろお手数おかけしてすみません。


ちょっと原因がわかったというか、doOnce〜()とキャッシュとの兼ね合いを十分に理解
できていなかったと思います。

---

doOnce〜()がブラウザで戻って押せるというのは、

CartUserConfirmOrderPageで
	public Class<?> prerender() {
		this.getResponse().setHeader("Expires", getHttpDate());
		this.getResponse().setHeader("Pragma", "no-cache");
		this.getResponse().setHeader("Cache-Control", "no-cache");
	
にしていた場合でした。この場合のログも添付してみました。

この場合は。ブラウザ戻った場合にキャッシュにないのでサーバからページを
を取りにくいので(TOKENも新しくなるので)サブミットできてしまうということで
よろしいでしょうか?

ログとしては以下のような流れになっております。
doOnceOrderが二回呼ばれております。

** before *****************************************: /view/example/exampleConfirmOrder.html
DEBUG 2007-11-10 11:48:49,158 [http-8080-Processor25] BEGIN bz.hoge.hoge.web.web.example.CartUserConfirmOrderPage#doOnceOrder()
決済
DEBUG 2007-11-10 11:48:54,562 [http-8080-Processor25] END bz.hoge.hoge.web.web.example.CartUserConfirmOrderPage#doOnceOrder() : class bz.hoge.hoge.web.web.cart.CartUserSuccessPage
** after *****************************************: /view/example/exampleConfirmOrder.html
** before *****************************************: /view/example/exampleSuccess.html
** before *****************************************: /view/example/exampleSuccess.html
** before *****************************************: /view/example/
** after *****************************************: /view/example/
** before *****************************************: /view/example/exampleConfirmOrder.html
** after *****************************************: /view/example/exampleConfirmOrder.html
** before *****************************************: /view/example/exampleConfirmOrder.html
DEBUG 2007-11-10 11:48:57,852 [http-8080-Processor22] BEGIN bz.hoge.hoge.web.web.example.CartUserConfirmOrderPage#doOnceOrder()
決済
DEBUG 2007-11-10 11:49:02,945 [http-8080-Processor22] END bz.hoge.hoge.web.web.example.CartUserConfirmOrderPage#doOnceOrder() Throwable:java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
** after *****************************************: /view/example/exampleConfirmOrder.html





───────────────────────────────
 株式会社 グランテック
 代表取締役社長
 加藤 潤一 Junichi Kato

〒154-0012
東京都世田谷区駒沢2-16-1 サンドー駒沢ビル4F
TEL 050-5538-2383  FAX 03-3487-7211
HP : http://www.grandtech.jp/
BLOG : http://d.hatena.ne.jp/j5ik2o/
E-MAIL : [E-MAIL ADDRESS DELETED]
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: ie7_log.txt
型:         application/octet-stream
サイズ:     1011057 バイト
説明:       無し
URL:        http://ml.seasar.org/archives/seasar-user/attachments/20071110/c9653f28/attachment.obj 


Seasar-user メーリングリストの案内