Struts 2为某些操作添加了异常映射

时间:2015-06-07 11:20:38

标签: java exception struts2 struts-config

考虑一个包含大量注释操作的项目。

public class TransferMoney(){

    @Action("transfer-money-show-form")
    public String showForm();

    @Action("transfer-money-confirm")
    public String confirmForm();

    @Action("transfer-money-result")
    public String result();
}

我想将异常映射添加到confirmForm,所以我可以这样做:

@Action(value = "transfer-money-confirm", 
        exceptionMappings = 
                 {@ExceptionMapping(
                       exception = "java.lang.Exception", 
                        result = "exception")
                  }
        )

然而,这是一种更好的方式吗?正如我所说,我有很多行动,我不想逐一为每一个添加exceptionMapping。我想要添加映射到它们的操作名称都以confirm结尾,但它似乎没用,因为异常映射不接受正则表达式。

1 个答案:

答案 0 :(得分:1)

您可以在struts.xml中使用<global-exception-mappings>。全局异常映射是每个S2包,因此您可以通过将它们放入单独的包中来定义不同的操作映射。

<package name="default">
    ...
    <global-exception-mappings>
        <exception-mapping exception="java.lang.Exception" result="exception"/>
    </global-exception-mappings>
    ...
</package>