[Seasar-user:8219] Re: [Teeda]PostBackUtil.isPostBackの使用について
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2007年 6月 11日 (月) 11:25:51 JST
お世話になります。田口です。
確認してみましたが、
RestoreViewPhaseが動き、
PostbackUtil.setPostback()が動作しています。
しかし、setPostbackでは"true"が設定されてしまいます。
(引数のpostbackはtrueになっている)
Teedaは1.0.7です。
他に何かチェックするポイントはありますでしょうか?
よろしくお願いします。
>大谷です。
>
>Teeda1.0.7に限って話を進めさせてください。
>(古いバージョンであればまた別途調査してみないとわかりません)
>
>内部的にTeedaCoreの上にどのような拡張をしているかに
>よってしまうのですが、
>PostbackUtil.isPostback()は単純にrequestMapに
>あるpostbackというキーに紐づくbooleanだけを見ています。
>これはどこで設定されているかというと、
>TeedaのRestoreViewPhase.setUpRestoreViewPhase()で行われています。
>
>つまりRestoreViewPhaseとRenderResponsePhaseが
>同一requestで行われているならば、PostbackUtilは正しく動くはずです。
>
>JSF画面からJSF画面に遷移する際にRestoreViewPhaseが
>正しく動いていて、PostbackUtil.setPostback()が正しく
>動いているかをデバッガなどで見てみてください。
>
>07/06/11 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]>
>さんは書きました:
>> お世話になります。田口です。
>>
>> Teedaでの初期処理を、JSPを使用する関係上、
>> Teeda Extensionを使用せず、
>> PhaseListenerを使って、処理しようとしております。
>>
>> その際に、initialize,prerennderの判定において
>> PostbackUtil.isPostBackメソッドを使用を検討していますが、
>> 画面遷移時にinitializeメソッドが実行されません。
>>
>> 具体的には、PhaseListenerで、
>> JSFライフサイクルのRENDER_RESPONSE時の
>> beforePhase処理において、
>> 下記のような判定ロジックを記載していますが、
>> PostbackUtil.isPostback(requestMap)がfalseにならないため、
>> initializeメソッドが動いていない状態です。
>>
>> ExternalContext externalContext = context.getExternalContext();
>> Map<String, String> requestMap = externalContext.getRequestMap();
>>
>> // フェーズIDがRENDER_RESPONSEの場合
>> if (phaseId == PhaseId.RENDER_RESPONSE) {
>>
>> // 同一画面表示の場合は、INITIALIZE_METHODはinvokeしない
>> if (!(PostbackUtil.isPostback(requestMap))) {
>> // initializeを実行
>> invoke(context,viewId,INITIALIZE_METHOD);
>> }
>>
>> 非JSF画面からの画面遷移時には、うまく動作していますが、
>> JSF画面からJSF画面の遷移時には、initializeが動いていない状態です。
>>
>> そもそもの使用方法が間違っているのでしょうか?
>> 処理方法について、ご教示ください。
>> よろしくお願いいたします。
>> _______________________________________________
>> 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 メーリングリストの案内