@ExceptionHandler(value = ServiceException.class)不生效
时间: 2024-04-24 11:27:09 浏览: 123
引用\[1\]中提到,由于Spring Security的认证原理是通过注册到Tomcat容器的filter链上,所以认证异常无法被DispatcherServlet捕获,因此@ExceptionHandler无法处理这些异常。\[1\]引用\[2\]中提到,可以通过配置登录认证异常处理类,并使用WebResponseExceptionTranslator将异常转换为自定义的OAuth2Exception,然后使用Jackson进行自定义异常信息的序列化。\[2\]引用\[3\]中提到,有时候即使配置了认证服务器并成功获取了token,但访问资源URL仍然报错access_denied。可以尝试配置security.oauth2.resource.filter-order或在WebSecurityConfigurerAdapter类上使用@Order注解来解决这个问题。根据这些引用内容,@ExceptionHandler(value = ServiceException.class)不生效可能是因为认证异常无法被DispatcherServlet捕获,或者需要进行额外的配置来处理自定义异常。
#### 引用[.reference_title]
- *1* *2* *3* [@ExceptionHandler不管用 spring security oauth2 自定义异常拦截InternalAuthenticationServiceException](https://blog.csdn.net/c5113620/article/details/89576545)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文