【发布时间】:2015-06-23 17:54:52
【问题描述】:
我需要返回自定义的 HTTP 404 错误页面,但代码不起作用。我已经阅读了堆栈流1、2、3 和不同的online + articles,但我的情况与这些完全不同,或者至少我无法弄清楚问题所在。
HTTP Status 404 -
type Status report
message
description The requested resource is not available.
例如,建议使用web.xml中的动作名称来处理异常,它可能会起作用,但我认为这不是一个好方法。
我使用了以下组合:
1)
@Controller //for class
@ResponseStatus(value = HttpStatus.NOT_FOUND) //for method
2)
@Controller //for class
@ResponseStatus(value = HttpStatus.NOT_FOUND) //for method
@ExceptionHandler(ResourceNotFoundException.class) //for method
3)
@ControllerAdvice //for class
@ResponseStatus(value = HttpStatus.NOT_FOUND) //for method
3)
@ControllerAdvice //for class
@ResponseStatus(HttpStatus.NOT_FOUND) //for method
4)
@ControllerAdvice //for class
@ResponseStatus(value = HttpStatus.NOT_FOUND) //for method
@ExceptionHandler(ResourceNotFoundException.class) //for method
代码
@ControllerAdvice
public class GlobalExceptionHandler {
@ResponseStatus(value = HttpStatus.NOT_FOUND)
public String handleBadRequest(Exception exception) {
return "error404";
}
}
【问题讨论】:
标签: spring spring-mvc exception-handling