[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 メーリングリストの案内