springboot+security为什么@ControllerAdvice自定义的异常处理没有生效
意外遇到一个无语的bug。项目架构差不多,为什么本项目的@ControllerAdvice自定义的异常处理没有生效,其他的就可以。
调试如下:
在捕获异常的位置debug @ControllerAdvice 标注的类是否被 Spring 容器正确管理。
很明显,没有。找到根源所在。
经验使然,肯定是某个人用了 @Import注解导致这个没有被引入。果然在security的配置类(WebSecurityConfig)找到此注解:
@Import({SessionRedisConfig.class})
修改成:
@Import({SessionRedisConfig.class, BaseExceptionHandle.class})
验证成功。
气人!!!