java config 解决 error-page 问题 (暴力方法)
最近在做毕业设计,使用的是java config方式配置spring mvc,问题是真的多。
废话不多讲,进入正题。
如何使用java config 配置 web.xml的error页,
百度了很多,stackoverflow也查了很多帖子,比较一致的回答都是配置HandlerException
先以用户自定义异常为例(404是重点,也是让我头疼了一晚上的地方)以下是代码:
/**
* 系统异常,异常id在ExceptionConstant中定义
*
* @param systemException 系统异常
* @return 根据异常id返回异常页面
*/
@ExceptionHandler({SystemException.class})
public String processException(SystemException systemException) {
return systemException.getExceptionStatus().getResponseView();
}
SystemException是我自定义的异常,responseView是对应异常id的视图名
这样,用户自定义的异常就能被catch住,并交给配置好的视图解析器处理。
下面说说404,根据官方给出的异常类,我们应该在HandlerException中,捕获NoHandlerFoundException
这样,找不到对应handler的url就会被以这个异常的形式抛出