【发布时间】:2016-01-07 14:22:17
【问题描述】:
我一直在尝试全局处理我的调度程序 servlet 没有为请求的 url 定义映射但尚未找到解决方案的情况。
这是我处理全局异常的类:
@ControllerAdvice
public class GlobalExceptionHandlerController {
@Value("${exception.view.default}")
private String defaultExceptionView;
private static final Logger LOGGER = Logger.getLogger(GlobalExceptionHandlerController.class);
@ExceptionHandler(Exception.class)
public ModelAndView notFoundException(Exception e) {
LOGGER.error("Error ocurred: " + e.getMessage());
return new ModelAndView(defaultExceptionView)
.addObject("code", "404")
.addObject("name", "Page Not Found")
.addObject("message", "We couldn't find requested resource");
}
}
我在@ExceptionHandler 中尝试了许多不同的类,但对我没有任何帮助。处理程序工作正常 - 当我从其中一个控制器抛出异常并且它没有在本地处理时,它会直接进入这个全局处理程序。
有没有办法通过@ControllerAdvice 执行这种异常处理?
【问题讨论】:
标签: java spring model-view-controller exception-handling dispatcher