[Seasar-user:11756] [Teeda]SubapplicationScopeについて
shibuya
[E-MAIL ADDRESS DELETED]
2007年 11月 21日 (水) 14:33:02 JST
お世話になっております、渋谷です。
実は開発中のプロジェクトで
SubapplicationScopeの値が引き継がれないという問題が発生しております。
正確にはSessionMapの中にはSubapplicationScopeの項目として値が保持されていますが、
プロパティにDIされません。
厄介なのは、teeda-html-exampleの
scope/subapplicationScopeInput(Result).htmlでの画面遷移では
正常に値が引き継がれているのは確認できますが、
開発中のプロジェクトに
scope/subapplicationScopeInput(Result).html(Pageクラスも)を
コピーして動作させると値を引き継がなくなります。
よって開発の環境が影響を及ぼしていると考えられます。
ログを見てみると、
teeda-html-exampleでは下記の様にコンポーネント定義を登録が行われた際に
セッターが呼ばれます。
−−−−−−−−−−−−−−−−−−−−−−
DEBUG 2007-11-21 13:45:50,781 [http-8080-Processor25] クラス(examples.teeda.web.scope.SubapplicationScopeResultPage[scope_subapplicationScopeResultPage])のコンポーネント定義を登録します
Result:setMessage1[hogehogehoge] ←セッタが呼ばれたログ
−−−−−−−−−−−−−−−−−−−−−−
しかし開発中プロジェクトでは下記の様に値はあるのにセッタが呼ばれません。
−−−−−−−−−−−−−−−−−−−−−−
[session]javax.faces.internal.scope.SubApplicationScope={null={org.seasar.teeda.extension.html.PagePersistence.SUBAPPLICATION={stringItems=[Ljava.lang.String;@1ad173e,
message1=hogehogehoge}}}
略
DEBUG 2007-11-21 13:45:10,718 [http-8080-Processor24] クラス(hoge.web.creator.applySkill.SubapplicationScopeResultPage[creator_applySkill_subapplicationScopeResultPage])
のコンポーネント定義を登録します
DEBUG 2007-11-21 13:45:10,734 [http-8080-Processor24] BEGIN hoge.web.creator.applySkill.SubapplicationScopeResultPage#initialize()
−−−−−−−−−−−−−−−−−−−−−−
しかし2回目以降は同じ画面に遷移したときはセッタが呼ばれます。
(その際はinitializeの前に呼ばれています。)
なぜか最初のコンポーネント登録の際によばれないという問題が発生します。
個人的な環境なので無理なお願いで申し訳ありませんが、
もし心当たり等ありましたら、是非ご意見をいただきたいと思います。
※環境(teeda-html-exampleも同じにして実行)
jdk:1.6.0_03
s2:2.4.17
teeda:1.0.12-20071110
以上、よろしくお願いします。
Seasar-user メーリングリストの案内