[Seasar-user:4372] f:paramで指定した値が、Actionに渡らない
Shin Tanimoto
[E-MAIL ADDRESS DELETED]
2006年 8月 18日 (金) 22:03:51 JST
こんばんは、せろです。
S2JSF 1.0.15にて、
<input>タグの子要素に指定した<span m:inject="f:param">が
特定の状況で無視される(Actionのsetterが呼ばれない)ため、困っています。
例えば、以下のようなHTMLで問題が発生します。
------------------------------------------------------------
<span m:inject="s:forEach" m:items="#{xxxList}" m:var="e">
<input type="submit" m:action="#{xxxAction.show}" value="show">
<span m:inject="f:param" m:name="userId" m:value="#{e.id}"/>
</input>
</span>
------------------------------------------------------------
以下の条件を全て満たした場合に限り、f:paramの値が無視されるようです。
・forEachの子要素である (forEachの外であればOK)
・タグがinputである (aタグならOK)
・m:valueがVB式 (定数ならOK)
Employee Exampleでも、employeeList.htmlの41行目付近、
EditのAタグを以下のようにinputタグに変更すれば再現します。
------------------------------------------------------------
<td><input type="submit" value="edit"
m:action="#{employeeListAction.goNext}">
<span m:inject="f:param" m:name="empno"
m:value="#{e.empno}"/>
<span m:inject="f:param" m:name="processMode"
m:value="2"/>
</input>
------------------------------------------------------------
本来できてもおかしくないと思うので、対応できないかな、と思っています。
ダメならリンクに切り替えますが・・・。
# いつもと違って、今日はちょっと自分でソースを見られそうにないです (^^;
では。
Seasar-user メーリングリストの案内