问题描述
- 配置Realm之后,发现在Realm中抛出的异常被无法捕获,最后抛出AuthenticationException异常
解决办法
- 针对上面问题
- 直接在全局异常中捕获AuthenticationException异常,简单粗暴
/**
* 拦截认证失败异常
*
* @author dduan
* @date 2021/12/1 10:00
*/
@ExceptionHandler(AuthenticationException.class)
@ResponseBody
public ErrorResponseData shiroAuthFail(AuthException e) {
log.error(">>> 认证异常,请求号为:{},具体信息为:{}", RequestNoContext.get(), e.getMessage());
return renderJson(e.getCode(), e.getErrorMessage());
}