s:actionによる他のアクションの実行

Struts2JSP中でs:actionタグを使用すると他のアクションを実行して、その結果のValueStackを参照したり結果の出力を取り込んだりすることが出来る。

まずValueStackを参照する場合

id属性で変数名を指定すれば、その変数経由で呼び出したアクションのValueStackが参照できる。

<s:action id="calledAction" name="view" namespace="/user"/>

として、このアクションが userId というプロパティを持っていれば

<s:property value="#calledAction.userId" />

のように名前をつけた #calledAction 経由で参照できる。

今まであまり注目していなかったが、この機能は結構使えそうだ。