2

我正在使用 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>

请帮助我如何使用多个重定向操作检索操作错误消息。

4

0 回答 0