[Seasar-user:1933] Re: S2JSF の無限ループ
Takahashi Kenichi
den03057
2005年 5月 6日 (金) 15:09:50 JST
高橋です。
>>・現在の問題
>>確認画面で「m:action="#{hoge.goPrevious}"」となっている戻るボタンを
>>押すと、登録画面に戻り、「m:action="#{hoge.goConfirm}"」が勝手に起動
>>される。
>>その後、確認画面にあるhoge.goPreviousが再び起動され、無限ループになる。
>>
>
> 確認画面と登録画面のformに違うidをつけてください。
> それで大丈夫だと思います。
> 偶然、確認画面のhoge.goPreviousと登録画面のhoge.goConfirmに
> 同じidが付いているんだと思います。
上記の解決策で無事動作いたしました。
ありがとうございました。
> 後、org.seasar.jsf.lifecycle.LifecycleImpl#executeの
> applyRequestValues(context);
> の後に
> if (isGetRedirect(context)) {
> sessionMap.put(REDIRECTED_TIME_ATTR,
> new Long(System.currentTimeMillis()));
> }
> を入れると別のidを付けなくてもなおりそうな気がするんですけど
> どうでしょうか。試してみていただけないでしょうか。
試してみましたが、残念ながら動作しませんでした。
> LifecycleImplを見るといかにS2JSFが苦労しているのかがわかります。(笑)
> というか苦労していない他のJSFの実装は、現場で本当に使われているのかと
> 疑問に思ったり。
確かに、かなり苦労しているのがわかりました。
今まで、S2ファミリーのソースは見ていなかったのですが、これを機会に少し
ずつ読ませていただこうと思います。
今後ともよろしくお願いいたします。
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
高橋健一 (Takahashi Kenichi)
e-mail: [E-MAIL ADDRESS DELETED]
Seasar-user メーリングリストの案内