带有约定插件的Struts 2-ExceptionMapping不起作用

时间:2018-10-02 15:54:49

标签: struts2 struts

我执行以下操作,将java.lang.Exception映射到名称测试的结果:

@Action(value = "getDispMeiosGruposAmbientes", results = {
    @Result(name = "test", type = "chain", params = {
        "actionName", "getItensSuprimento"
    })}, exceptionMappings = {
    @ExceptionMapping(exception = "java.lang.NullPointerException", result = "test", params = {"param1", "val1"})
})
public class TestAction extends ActionSupport {

    public String execute() throws Exception {
        throw new NullPointerException();
//        return "test";
    }
}

抛出异常时,测试结果应重定向到jsp页面。

但这不起作用。也许语法错误?

编辑:我已经更改了动作,现在当我返回“测试”字符串时可以重定向到动作,但是当我抛出异常时不能重定向到动作。一切似乎都很好。

1 个答案:

答案 0 :(得分:0)

事实证明,我使用的是Struts的2.3.20版本,并且存在一个带有异常映射的错误,该错误未捕获抛出的异常。我已更改为版本2.5.17,现在异常映射可以正常工作。

on this questionApache JIRA中描述了此错误;