jsp页面错误的全局处理

网上搜索spring mvc项目全局异常处理: 大致可以找到两种方案 : 

方案1: ExceptionHandlerResolver . spring 提供了两种默认实现,当然你也可以自己实现。。 

方案2: 使用 @ExceptionHandler 配合 @ControllerAdvice 可以对所有Controller 生效。。

我使用了第二种方案。。对应项目的错误,的确可以处理。。

但是发现对于jsp 中的错误却没有作用, 比如el表达式中 ${a.field} 我可能a对象中就没有field 字段。。 这是就会报el解析错误。。

个人看法: 为什么spring无法统一处理改错误,,可能是el 表达式是tomcat 处理的,和spring 无法,所以spring无法拦截到该错误 。 有大神懂的可以留言指教。。

那就只能在web.xml 中处理了。。 

 

<error-page>
<exception-type>java.lang.RuntimeException</exception-type>
<location>/error</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/error</location>
</error-page>

/error 是一个controller 路径,自己配置调到想要的错误页面就行。。 。

posted on 2018-06-26 17:54  远方的人  阅读(272)  评论(0编辑  收藏  举报

导航