vic*_*csz 5 java spring spring-boot
在我的Spring Boot应用程序中,我目前正在利用resources/public/error/404.html自定义错误页面在无效URL上显示(自动)此404页面错误.
是否有一种简单的方法可以保留此自动功能,并为每个这样的404添加简单的日志消息(包含无效的URL)?
理想情况下,尽可能少的代码我想要一些像:
//Some code
LOGGER.warn("Invalid URL " + request.url);
//Some more code
Run Code Online (Sandbox Code Playgroud)
您需要定义自定义ErrorViewResolver:
@Component
public class MyErrorViewResolver implements ErrorViewResolver {
@Override
public ModelAndView resolveErrorView(HttpServletRequest request, HttpStatus status, Map<String, Object> model) {
if (HttpStatus.NOT_FOUND == status) {
LoggerFactory.getLogger(this.getClass()).error("error 404 for url " + model.get("path"));
return new ModelAndView("error404", model);
}
else {
return new ModelAndView("error", model);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这个MyErrorViewResolver将在BasicErrorController类中自动调用.
对于404错误,将显示视图"error404".
对于其他错误,将显示视图"错误".
视图必须位于"templates"文件夹(resources/templates/error404.html)中.
| 归档时间: |
|
| 查看次数: |
1156 次 |
| 最近记录: |