如何使用struts2中的多个重定向操作检索操作错误消息?

时间:2013-08-12 19:13:30

标签: validation struts2 interceptor

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

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

0 个答案:

没有答案