Java Spring MVC能否捕获异常并在所有控制器的响应中返回BindingResult?

Java Spring MVC能否捕获异常并在所有控制器的响应中返回BindingResult?,java,spring,spring-mvc,spring-validator,Java,Spring,Spring Mvc,Spring Validator,我试图利用应用程序服务层上的现有验证框架,在验证失败时抛出ValidationException。这个异常对象包含多个错误,我想利用SpringMVC中的异常处理程序来提取这些错误并将验证消息返回给视图 因此,我有两个关于如何做到这一点的问题: 1我可以从要传递到视图层的自定义错误对象列表中手动创建BindingResult对象吗 2我可以从基本控制器中的处理程序捕获ValidationException吗?它可以从多个方法中抛出,并让它截获响应并返回带有验证消息的视图?或者我必须在每个可能抛出

我试图利用应用程序服务层上的现有验证框架,在验证失败时抛出ValidationException。这个异常对象包含多个错误,我想利用SpringMVC中的异常处理程序来提取这些错误并将验证消息返回给视图

因此,我有两个关于如何做到这一点的问题:

1我可以从要传递到视图层的自定义错误对象列表中手动创建BindingResult对象吗

2我可以从基本控制器中的处理程序捕获ValidationException吗?它可以从多个方法中抛出,并让它截获响应并返回带有验证消息的视图?或者我必须在每个可能抛出异常的控制器方法中尝试/捕获该异常,并从中提取绑定结果吗


显然,如果所有这些都发生在一个点上会更好——如果一个处理程序可以捕获ValidationException并将错误消息注入视图中。但该方法是否可以访问返回的模型和视图?关于这个架构的任何建议都会非常有用。

你查过谷歌了吗?我的第一个目标是 这将允许您使用适当的模型返回所需异常的视图

还要看一下spring文档中的异常处理程序?

接下来的问题是如何检索bindingresult。如果我在谷歌上搜索它,它看起来可以作为请求属性使用:
你查过谷歌了吗?我的第一个目标是 这将允许您使用适当的模型返回所需异常的视图

还要看一下spring文档中的异常处理程序?

接下来的问题是如何检索bindingresult。如果我在谷歌上搜索它,它看起来可以作为请求属性使用:

谢谢,这几乎就是问题所在-问题在于异常处理程序,如果我捕获到ValidationException,我不知道返回哪个视图-这不是一般视图-我希望它是提交的最后一页我唯一能想到的是查看引用者或将视图作为请求属性传递,这很难看。你应该仔细看看推荐人。如果您使用的是Post-Redirect-Get,那么referer应该正好是您想要返回的页面,因为上一个请求是Get。另一个选择是使用一个单独的筛选器/handlerinterceptor,将最后一个视图附加到会话中,然后使用它-但这需要使用会话。如果您正在使用会话,这可能是最简单的解决方案:让它返回以前返回的视图!谢谢,这就差不多了-问题在异常处理程序中,如果我捕获到ValidationException,我不知道返回哪个视图它不是一般视图-我希望它是提交的最后一个页面我唯一能想到的就是查看引用者或将视图作为请求属性传递,这很难看。你应该仔细看看推荐人。如果您使用的是Post-Redirect-Get,那么referer应该正好是您想要返回的页面,因为上一个请求是Get。另一个选择是使用一个单独的筛选器/handlerinterceptor,将最后一个视图附加到会话中,然后使用它-但这需要使用会话。如果您正在使用会话,这可能是最简单的解决方案:让它返回以前返回的视图!