[Seasar-user:4373] Re: f:paramで指定した値が、Actionに渡らない

cero [E-MAIL ADDRESS DELETED]
2006年 8月 19日 (土) 04:20:30 JST


せろ@自己レスです。

落ち着いて考えると、
ボタンを押すタイミングでは、forEachに使っているxxxListが存在しないので、
f:paramのm:valueの値も、nullにならざるを得ない、、、という事ですね。

確認のために、xxxListをsessionで保持するよう
dicon定義したら、問題がなくなりました。

とは言え、検索結果のListなんて、sessionに入れたくない (^^;
ので、いったん、ボタンを使っていた所は、
リンクに置き換えることで、対応しようと思います。


ただ、inputタグも、aタグと同じように、
html上にf:param用の値を保持できれば、便利になるのに・・・と思いますが。


では。

> -----Original Message-----
> From: [E-MAIL ADDRESS DELETED] 
> [mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of Shin Tanimoto
> Sent: Friday, August 18, 2006 10:04 PM
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:4372]f:paramで指定した値が、Actionに渡らない
> 
> 
> こんばんは、せろです。
> 
> 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 mailing list
> [E-MAIL ADDRESS DELETED] 
https://www.seasar.org/mailman/listinfo/seasar-user





Seasar-user メーリングリストの案内