为了账号安全,请及时绑定邮箱和手机立即绑定

在 Spring 中禁用 AbstractHandlerExceptionResolver

在 Spring 中禁用 AbstractHandlerExceptionResolver

holdtom 2022-07-06 16:01:47
下面的异常处理程序对我的所有控制器都通用,除了在处理异常后我需要从 AbstractHandlerExceptionResolver 类中禁用 WARN 日志外,它工作正常。使用 Spring-webmvc 5x 版本。@ControllerAdvicepublic class AllExceptionHandler{    @ExceptionHandler(SomeCustomException.class)    @ResponseStatus(HttpStatus.BAD_REQUEST)    public void exceptionHandler() {    }}这是我试图避免的生成的日志:2019 年 2 月 20 日 15:22:54,896 警告 [http-nio-8080-exec-1] (AbstractHandlerExceptionResolver.java:140) - 已解决 [com.rasa.rrt.ste.controller.SomeCustomException]我没有使用 Spring Boot。试图用ExceptionHandlerExceptionResolver扩展上面的AllExceptionHandler类, 并在AllExceptionHandler构造函数中调用warnLogCategory(null),但是它抛出了 NullPointerException。另外,我在谷歌上看到设置这个属性“spring.mvc.log-resolved-exception=false”来禁用警告,但不确定在哪里/如何设置它。
查看完整描述

2 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

您提到spring.mvc.log-resolved-exception=false了一个可能的解决方案:

另外,我在谷歌上看到设置这个属性“spring.mvc.log-resolved-exception=false”来禁用警告,但不确定在哪里/如何设置它。

spring.mvc.log-resolved-exception属性是Spring Boot 属性,将使用标准 Spring Boot外部化配置机制进行设置。启用该属性会导致 Spring Boot 配置HandlerExceptionResolverbean 以记录异常,否则它们不会。

是否启用由“HandlerExceptionResolver”解决的异常的警告日志记录,“DefaultHandlerExceptionResolver”除外。

由于您已声明您没有使用 Spring Boot,因此此属性不适用于您的场景。


查看完整回答
反对 回复 2022-07-06
?
慕村225694

TA贡献1880条经验 获得超4个赞

您可以在 logback 配置中禁用此警告日志,方法是在我的情况下在以下行中指定“logback-spring.groovy”

logger("org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver", ERROR)



查看完整回答
反对 回复 2022-07-06
  • 2 回答
  • 0 关注
  • 247 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信