在我的struts应用程序中,我有两个名为' 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>
答案 0 :(得分:1)
在<param name="namespace">
类型结果中使用chain
。您可以在Struts2 official documentation中查看有关此类型结果的官方文档,以查看有关此类型的详细信息。
在你的情况下:
<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>
答案 1 :(得分:0)
请使用结果type="redirectAction"
代替结果type="chain"