insertついでに、もう一つ。
某先輩から「insertタグにパラメタを渡したいんだよねー、できるよね?」と
プレッシャー込み(笑)で質問されたので、ちょっと試してみた。
呼び出し側のHTML(抜粋)
<span m:inject="s:insert" m:src="hoge.html"> <span m:inject="f:param" m:name="hoge" m:value="ほげ"/> </span>
呼び出される側のHTML(抜粋)
<span m:inject="s:insert"> <span m:value="#{hoge}"/> </span>
JSPのincludeと同じように出来るかと思ったけど、甘かった。
呼び出し側のinsertタグは、m:src属性を持っていると、それ以上解釈されないみたい。
あ、いや、まてまて、
確か、これってできたっけ?
<span m:inject="f:param" m:name="hoge" m:value="ほげ"> <span m:value="#{hoge}"/> </span>
OK、できた。
ということは、
f:paramの子要素として、insertタグ入れるだけじゃない?
<span m:inject="f:param" m:name="hoge" m:value="ほげ"> <span m:inject="s:insert" m:src="hoge.html"/> </span>
できました。
以上、チーン。
あ、呼び出されたhoge.htmlのInitActionにも、ちゃんとf:paramの値が設定されるみたいですね。
- InsertProcessor#processの中でInitActionを呼ぶように修正する(S2JSFでWebParts その5)
- hoge.htmlのinitActionに、setHoge(String hoge)を書いておく。
とすればOK。
なかなかやるな、f:param。
まぁ直書きしてるから、当然か。