0

在我的 struts 应用程序中,我有 2 个名为“a”和“b”的命名空间,并为每个命名空间定义了操作“进程”。

现在,在某些情况下,我必须将请求从命名空间“a”中的操作“进程”链接到命名空间“b”中的操作“进程”。但是我不知道如何在 struts.xml 中执行此操作。如何将这些请求链接到另一个命名空间?

我的 struts 配置如下所示:

<package name="testa" extends="struts-default, json-default" namespace="/a">
    <action name="process" class="com.khoinguyen.action.ProcessAction" method="handleResponseA">
        <result type="chain" name="return_b">
            <param name="actionName">b/process</param>
        </result>
        <result name="success">completea.jsp</result>
    </action>
</package>
<package name="testb" extends="struts-default, json-default" namespace="/b">
    <action name="process" class="com.khoinguyen.action.ProcessAction" method="handleResponseB">        
        <result name="success">completeb.jsp</result>
    </action>
</package>
4

2 回答 2

1

使用<param name="namespace">内部chain类型结果。您可以在Struts2 官方文档中查看有关此类型结果的官方文档以查看有关它的更多信息。

在你的情况下:

<package name="testa" extends="struts-default, json-default" namespace="/a">
    <action name="process" class="com.khoinguyen.action.ProcessAction" method="handleResponseA">
        <result type="chain" name="return_b">
             <param name="namespace">/b</param>
             <param name="actionName">process</param>
        </result>
        <result name="success">completea.jsp</result>
    </action>
</package>
于 2012-12-12T10:50:52.663 回答
0

请使用结果type="redirectAction"而不是结果type="chain"

于 2017-07-13T10:01:48.683 回答