[Seasar-user:10243] [Teeda]Teeda1.0.11-RC1の@PageScope、@SubapplicationScopeの挙動について
橋本 昇
[E-MAIL ADDRESS DELETED]
2007年 8月 31日 (金) 10:54:30 JST
こんにちは、橋本と申します。
大谷さん、@PageScopeの不具合に対応していただきましてありがとうございます。
結果を楽しみにTeeda 1.0.11-RC1で動作を確認してみました。
※Seasar2 2.4.17との併用です
そこでいくつか気がついた点があります。
質問の前提コードは下記の通りです。
public class TestPage {
@PageScope
public String pageField;
@SubapplicationScope
public String subAppField;
public Class initialize() {
pageField = "pageField";
subAppField = "subAppField";
return null;
}
public Class prerender() {
System.out.println("prerender pageFiled=" + pageField);
System.out.println("prerender subAppField=" + subAppField);
return null;
}
public void doUpdate() {
System.out.println("doUpdate pageFiled=" + pageField);
System.out.println("doUpdate subAppField=" + subAppField);
}
}
<form id="Form">
<input type="submit" id="doUpdate"/>
</form>
上記のコードで
1.
とりあえず画面を表示する。
ログとして下記の表示が出力
prerender pageFiled=pageField
prerender subAppField=subAppField
2.
ボタンでsubmitする
ログとして下記の表示が出力
doUpdate pageFiled=null
doUpdate subAppField=null
prerender pageFiled=pageField
prerender subAppField=null
ここで2つの疑問がわきます。
疑問1
@SubapplicationScopeの値の引継ぎが失敗しているのでは?
疑問2
@PageScopeの値の復旧はprerender時には行われていますが、doXXXのイベント発
生に間に合うタイミングで行われないのでしょうか?
要望としてはdoXXX実行時に間に合うタイミングで復旧する事を希望いたします。
実際はJSFコンポーネントがPageクラスのgetter/setterを利用し始める前でしょ
うか・・・
JSFに明るくないため中途半端な技術要望ですみません。
※1.0.10の@SubapplicationScopeはそのようなタイミングで動作しているように
思えます。
以上、ご検討よろしくお願いします。
Seasar-user メーリングリストの案内