[Seasar-user:13156] [teeda] Pageスコープを設定したフィールドにdo〜()でnullをセットした場合の挙動について
Mitsutaka Sato
[E-MAIL ADDRESS DELETED]
2008年 3月 5日 (水) 17:26:15 JST
佐藤と申します。
いつもお世話になっております。
Pageスコープを設定したフィールドにdo〜()でnullをセットした場合に、prerenderが呼び出される前にnullの前の値に戻されてしまうという
事象があるようなので報告します。
■HTML
<body>
<form id="hogeForm">
<span id="fuga">ふが</span>
<input type="submit" id="doAction" value="BigDecimalをnullに" />
<input type="button" value="ajax" onclick="doajax()"/>
<select id="aaa">
<option>選択してください</option>
</select>
<select id="bbb">
<option>選択してください</option>
</select>
</form>
</body>
■Pageクラス
public class HogePage {
private static final Log log = LogFactory.getLog(HogePage.class);
@PageScope
public BigDecimal fuga;
public String aaa;
public String bbb;
public String ccc;
public Class initialize() {
fuga = new BigDecimal("11.2");
log.debug("init:" + fuga);
return null;
}
public Class prerender() {
log.debug("prerender:" + fuga);
return null;
}
public Class doAction() {
fuga = null;
log.debug("doAction:" + fuga);
return null;
}
}
【発見した事象】
1. hoge.htmlにアクセスすると、fugaに11.2がセットされる。
2. doActionのボタンを押すと、 fugaがnullになるはずが、あいかわらず11.2が表示される。
⇒ログでは doActionメソッドの終了時はfuga=null, prerenderの終了時は fuga=11.2になっている。
teeda-1.0.11-sp1 です。
よろしくお願いします。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://ml.seasar.org/archives/seasar-user/attachments/20080305/8975979b/attachment-0001.html
Seasar-user メーリングリストの案内