我正在使用 struts2,我的 struts.xml 看起来像这样:
<action name="actionA" class="actionAClass">
<result name="success" type="redirectAction">actionD</result>
<result name="error" type="redirectAction">actionB</result>
</action>
<action name="actionB" class="actionBClass">
<result name="success" type="redirectAction">actionC</result>
<result name="error" type="redirectAction">actionC</result>
</action>
<action name="actionC" class="actionAClass">
<result name="success">homepage.jsp</result>
<result name="error">homepage.jsp</result>
</action>
可以看到,actionA错误结果重定向到actionB,actionB错误结果重定向到actionC。最后,我想在 homepage.jsp 中显示错误消息,但只有在调用 actionC 时才会加载主页。但是使用这样的操作,当主页加载时,所有操作错误消息都会丢失。
我也尝试在 struts.xml 中使用拦截器,如下所示,但我仍然无法检索错误消息:
<action name="actionA" class="actionAClass">
<interceptor-ref name="store">
<param name="operationMode">STORE</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
<result name="success" type="redirectAction">actionD</result>
<result name="error" type="redirectAction">actionB</result>
</action>
<action name="actionB" class="actionBClass">
<result name="success" type="redirectAction">actionC</result>
<result name="error" type="redirectAction">actionC</result>
</action>
<action name="actionC" class="actionAClass">
<interceptor-ref name="store">
<param name="operationMode">RETRIEVE</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
<result name="success">homepage.jsp</result>
<result name="error">homepage.jsp</result>
</action>
请帮助我如何使用多个重定向操作检索操作错误消息。