[Seasar-user:6408] Re: [Teeda]非JSFページからのアクセス時のライフサイクルにつ
Shinpei Ohtani
[E-MAIL ADDRESS DELETED]
2007年 2月 28日 (水) 13:00:36 JST
大谷です。
本日リリースします。
07/02/28 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]>
さんは書きました:
> 田口です。
>
> >これはTeedaのバグだったので修正しました。
> >次のバージョンには反映されます。
> >
> いつごろにリリースされるのでしょうか?
> 目安でもかまいませんので
> お教えください。
>
>
> >大谷です。
> >
> >> > この初期表示のライフサイクルなのですが,
> >> > JSFの資料を見て,私も上記の認識でしたが,
> >> > 非JSFページAに対し,
> >> > リクエストパラメータを設定し
> >> > A.jsp?xxx=XXとかの設定を行うと,
> >> > 以降のフェーズが通ることを確認しています。
> >> > (org.seasar.teeda.core.lifecycle.impl.RestoreViewPhaseの
> >> > executePhaseの最終行の処理)
> >
> >これはTeedaのバグだったので修正しました。
> >次のバージョンには反映されます。
> >
> >宜しくお願いします。
> >
> >07/02/26 に Shinpei Ohtani<[E-MAIL ADDRESS DELETED]> さんは書きました:
> >> 大谷です。
> >>
> >> > この初期表示のライフサイクルなのですが,
> >> > JSFの資料を見て,私も上記の認識でしたが,
> >> > 非JSFページAに対し,
> >> > リクエストパラメータを設定し
> >> > A.jsp?xxx=XXとかの設定を行うと,
> >> > 以降のフェーズが通ることを確認しています。
> >> > (org.seasar.teeda.core.lifecycle.impl.RestoreViewPhaseの
> >> > executePhaseの最終行の処理)
> >>
> >> こちらの件は調査してみます。
> >>
> >> > 「TeedaExtensionを参考に」とのことですが、
> >> > 具体的にどのクラスなりメソッドが参考になりますでしょうか?
> >>
> >> org.seasar.teeda.extension.html.impl.HtmlViewHandlerです。
> >> 1.0.4であれば、restoreViewメソッドでinitializeが呼ばれ(postbackではない場合)、
> >> renderViewでprerenderが呼ばれています。
> >>
> >> 宜しくお願いします。
> >>
> >> 07/02/26 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]>
> >> さんは書きました:
> >> > お世話になります。田口です。
> >> > さっそくのご回答ありがとうございます。
> >> >
> >> > >の2つしかとおらないので、InvokeApplicationフェーズはとおりません。
> >> > この初期表示のライフサイクルなのですが,
> >> > JSFの資料を見て,私も上記の認識でしたが,
> >> > 非JSFページAに対し,
> >> > リクエストパラメータを設定し
> >> > A.jsp?xxx=XXとかの設定を行うと,
> >> > 以降のフェーズが通ることを確認しています。
> >> > (org.seasar.teeda.core.lifecycle.impl.RestoreViewPhaseの
> >> > executePhaseの最終行の処理)
> >> >
> >> > 「TeedaExtensionを参考に」とのことですが、
> >> > 具体的にどのクラスなりメソッドが参考になりますでしょうか?
> >> >
> >> > 以上,よろしくお願いいたします。
> >> >
> >> >
> >> > >大谷です。
> >> > >
> >> > >初期表示時にJSFのライフサイクルは
> >> > >・RestoreViewPhase
> >> > >・RenderResponsePhase
> >> > >の2つしかとおらないので、InvokeApplicationフェーズはとおりません。
> >> > >
> >> > >なので、InvokeApplicationフェーズでPhaseListenerを仕掛けるのは
> >> > >適切ではないと思います。
> >> > >
> >> > >TeedaExtensionを参考に、初期表示時にでも通る
> >> > >・RestoreViewPhase
> >> > >・RenderResponsePhase
> >> > >にPhaseListenerを仕掛けるのがよいのではないでしょうか。
> >> > >
> >> > >以上宜しくお願いします。
> >> > >
> >> > >07/02/26 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]>
> >> > >さんは書きました:
> >> > >> 田口です。
> >> > >> お世話になります。
> >> > >>
> >> > >> S2 2.4.6,Teeda1.0.4で開発を行っています。
> >> > >> JSP表示前に初期化処理を行うため,
> >> > >> PhaseListenerを作成し,initialize処理を行っていますが,
> >> > >> 非JSFページからのアクセス時(初回表示),
> >> > >> initialize処理が動かない事象が発生しています。
> >> > >>
> >> > >> initializeとprerenderの判定は,
> >> > >> INVOKE_APPLICATIONフェーズにおいて,
> >> > >> viewroot.getViewId()により取得したViewIdを,
> >> > >> externalcontext.getRequestMap()により取得したRequestMapに保持し
> >> > >> これをRENDER_RESPONSEフェーズの際に取得したViewIdと比較し,
> >> > >> 違えばinitializeを行い,
> >> > >> 同じであれば,同一画面表示とみなし,initializeを行わないように
> >> > >> しています。
> >> > >>
> >> > >> そこで,JSFページAからJSFページBに遷移する場合は,
> >> > >> INVOKE_APPLICATIONフェーズにおいて取得したViewIdはAなのですが,
> >> > >> 非JSFページAからJSFページBに遷移する場合は,
> >> > >> 取得したViewIdがAではなくBとなっており,
> >> > >> initializeが行われない状態です。
> >> > >>
> >> > >> 非JSFページからのアクセス時でも
> >> > >> 上記の処理がきちんと動作するようにするには
> >> > >> どのような判定を行うようにすればいいでしょうか?
> >> > >>
> >> > >> 以上,ご教示ください。
> >> > >> _______________________________________________
> >> > >> Seasar-user mailing list
> >> > >> [E-MAIL ADDRESS DELETED]
> >> > >> https://ml.seasar.org/mailman/listinfo/seasar-user
> >> > >>
> >> > >
> >> > >
> >> > >--
> >> > >=============================
> >> > >Shinpei Ohtani
> >> > >[E-MAIL ADDRESS DELETED]
> >> > >=============================
> >> > >_______________________________________________
> >> > >Seasar-user mailing list
> >> > >[E-MAIL ADDRESS DELETED]
> >> > >https://ml.seasar.org/mailman/listinfo/seasar-user
> >> > >
> >> > _______________________________________________
> >> > Seasar-user mailing list
> >> > [E-MAIL ADDRESS DELETED]
> >> > https://ml.seasar.org/mailman/listinfo/seasar-user
> >> >
> >>
> >>
> >> --
> >> =============================
> >> Shinpei Ohtani
> >> [E-MAIL ADDRESS DELETED]
> >> =============================
> >>
> >
> >
> >--
> >=============================
> >Shinpei Ohtani
> >[E-MAIL ADDRESS DELETED]
> >=============================
> >_______________________________________________
> >Seasar-user mailing list
> >[E-MAIL ADDRESS DELETED]
> >https://ml.seasar.org/mailman/listinfo/seasar-user
> >
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
--
=============================
Shinpei Ohtani
[E-MAIL ADDRESS DELETED]
=============================
Seasar-user メーリングリストの案内