[Seasar-user:9498] Re: [Teeda]Condition の動作についてSeasar-user:8216と同様?

中村 渉 [E-MAIL ADDRESS DELETED]
2007年 7月 27日 (金) 11:50:47 JST


中村です、お世話になっております。

TeedaのTrunkからSNAPSHOTを作成して
試してみましたが、同様の現象が再現しています。

おそらくTCondition#isRenderedの中で
FacesMessageのあるなしで、Conditionのboolean値の取得先を
ある場合:PageScopeのから取得
ない場合:PageScopeをクリアしてValueBindingから取得
と切り替えている為、

こちらで問題が起きている画面のような
インフォーメーションメッセージを設定後、
一覧表示の内容を更新する処理で
前画面の状態が使われてしまっていると思われます。

Validatorエラー時の表示も絡んでそうですが
どうしたらよいのでしょうか?

メッセージを設定する場合は画面の表示を書き換えない
という対応は難しいので、御検討をお願いします。

以上、よろしくお願いします。

Yasuo Higa wrote:
> ひがです。
> 
>> 中村です。いつもお世話になっております。
>>
>> [Seasar-user:8216]に似た現象が
>> 私のプロジェクトでも発生してしまったのでご報告します。
>> 利用しているバージョンは1.0.8です。
>>
>> あるForEachの中でConditionを利用している画面で
>> ・ボタン押下処理(doXXX)
>>     FacesMessageUtilでメッセージを設定
>> ・再描画処理(prerender)
>>     Tableに表示する値を更新
>> という流れでテーブルの表示を切り替えた際に
>> 前の画面で表示していたPageScopeの値が利用されています。
>>
>> doXXXの処理の中でメッセージ設定をしなければ
>> 問題なく表示が行えます。
>>
>> TCondition#isRenderedにブレークポイントを設定した見たところ
>> メッセージを設定する場合と、しない場合で
>> PageScopeの値が更新されるタイミングが
>> 異なっているように思われます。
>>
> TConditionは最新のtrunkで修正が入っています。
> 今回、TConditionにデグレがあったためいつもの予定より
> 早めにリリースを計画しています。
> 
> ご迷惑をおかけしますが、最新版で試していただけるでしょうか。
>> またついでの質問で申し訳ありませんが
>> この検証の為にTeedaを1.0.8にあげた際に
>> AjaxUtilのtoJsonメソッドが無くなった事が原因で
>> Ajax関連の機能が動かなくなってしましました。
>> 何か代替が用意されているのでしょうか?
>>
> JSONSerializerをお使いください。
> 同じパッケージにあります。
> 
> よろしくお願いします。
> 
> --
> Yasuo Higa
> [E-MAIL ADDRESS DELETED]
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> __________ NOD32 2424 (20070726) 情報 __________
> 
> このメールはNOD32によって検査済みです。
> http://canon-sol.jp
> 
> 
> 


-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 ノハ//   プロスパーク株式会社 中村 渉
   // ノハ  [E-MAIL ADDRESS DELETED]
  //       竹橋オフィス
 ハ//         〒101-0054 東京都千代田区神田錦町2-7 南部ビル6F
  //          TEL:03-6804-8680 FAX:03-6804-8681
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=



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