0

struts2構成ファイルがあり、プロパティによってはURLの設定に問題があります。

<action name="ABC" class="myAction" method="myMethod" >
            <result name="direct" type="redirectAction">
                <param name="namespace">/navigate</param>
                <param name="actionName">logout</param>
            </result>
            <result name="nonDirect" type="redirectAction">{url.set.in.properties}</result>
        </action>

なぜそれが必要なのですか?このURLはdiff環境(QA、UAT、prodなど)で異なる可能性があるためです。

それで、struts configでプロパティ設定を使用することは可能ですか(たとえば、Springコンテキストファイルで使用するように)?

もう1つの問題は、URLが「www.google.com」のようにグローバルなものでなければならないという事実です。現在、間違ったURL「http://localhost/package_name_here/http://www.goggle.com」にリダイレクトされます

4

1 に答える 1

0

ゲッターとセッターを使用してmyAction属性に設定し、プロパティ ( を使用)で設定してから、 で使用できます。myRedirectgetText(...)struts.xml

myAction

class myAction extends ActionSupport {
    ...
    private String myRedirect; // TODO: Getters and setters
    ...
    public String execute () {
        ...
        myRedirect = getText('url.set.in.properties');
        ...
    }
}

次に struts.xmlredirectに、絶対 URL にリダイレクトするタイプの結果を入力します。

struts.xml

...
<action name="ABC" class="myAction" method="myMethod" >
   <result type="redirect">
       <param name="location">${myRedirect}</param>
   </result>
</action>
...
于 2012-08-29T11:17:10.913 に答える