読者です 読者をやめる 読者になる 読者になる

( ꒪⌓꒪) ゆるよろ日記

( ゚∀゚)o彡°オパーイ!オパーイ! ( ;゚皿゚)ノシΣ フィンギィィーーッ!!!

リダイレクト時に動的な値をクエリストリングに付与する方法

Java Struts2

なんか、ちょっとハマったのでメモ。

Actionなどで動的に生成した値をリダイレクト時にクエリストリングに付与する場合、以下のような書式で書く。

  @Result(name = "redirect", path = "RedirectPath?param1=${prop1}", type = "redirect-action", params = {
				"namespace", "/AnotherNamespace })

path属性の中の${prop1}と書いた部分が、動的な値に置き換わる。
値は、ValueStackの中からOGNLで検索される。
たとえば、bean1.prop1とすると、Actionのbean1プロパティからさらにprop1を取得して置き換える。

また、別のNamespacceのActionに対してRedirectさせたい場合は、paramsに
"namespace","アクションのパス"って感じで追加する。

ってか、ドキュメントにちゃんと書いてあるし。
http://struts.apache.org/2.x/docs/parameters-in-configuration-results.html