从非控制器位置

时间:2015-11-22 20:21:08

标签: spring spring-mvc

在我的Spring MVC应用程序的某个地方,我需要添加一个全局错误。我无法访问任何BindingResult,我只有我的请求。我的错误不是任何绑定问题的结果,它是一个全球性的条件。然后我需要将我的新Errors对象附加到"错误"所需物品。属性,所以JSP可以显示它。

但是怎么做?我无法做到

Errors errors = new Errors();
errors.reject(....);
request.setAttribute("errors", errors);

因为错误是一个界面。这些实现都与“绑定”有关,如BindException, AbstractBindingResult, MapBindingResult等。这些都与我的情况无关,我没有绑定字段错误,它&#39 ;一般错误消息。

任何提示?

1 个答案:

答案 0 :(得分:1)

我们解决这个问题:处理EXCEPTIONS(而不是VALIDATION错误)的正确方法是跟踪我们自己的自定义请求属性,我们将自己显示在JSP的错误区域中。

BindingResult /错误/等。与绑定有关,我们无法处理它以处理一般异常错误。

我们只需添加自定义Request Attr。叫"例外"然后我们的错误部分检查要显示的此附加属性列表。

SpringMVC没有提供自己的通用'错误收集。