并非所有异常都在SimpleMappingExceptionResolver中映射到resolveException

时间:2012-07-19 09:53:37

标签: java spring spring-mvc

我在resolveException中覆盖SimpleMappingExceptionResolver,以便发送包含堆栈跟踪的电子邮件,该错误适用于500个错误,但400错误未达到此方法。 (没有堆栈跟踪要发送,但我仍然想发送一封电子邮件并显示一个不错的错误页面。)

有没有办法做到这一点,还是我应该配置我的web.xml来处理400(和类似的)?

1 个答案:

答案 0 :(得分:1)

我想你会发现这个答案很有用:

Spring SimpleMappingExceptionResolver not going to default view

TL; DR Spring ExceptionResolvers不处理所有异常,只处理控制器抛出的异常。当Spring无法转换映射控制器的提交数据时,可能会抛出“400 - 错误请求”,并且ExceptionHandler永远不会看到它抛出的异常。

您的web.xml解决方案应该可以正常运行。