发生了什么事AccessDeniedException
,因此您想要配置系统以拦截该异常并返回JSON。
您可以@ExceptionHandler
在控制器中设置捕获的方法AccessDeniedException
。但是,您可能想在所有控制器中执行相同的操作,因此,如果您使用的是Spring 3.2,则可以@ControllerAdvice
在单独的“ advice”类上使用批注,然后@ExceptionHandler
在其中包含方法。
@ControllerAdvice
public class ExceptionControllerAdvice {
@ExceptionHandler(AccessDeniedException.class)
@ResponseBody
public String exception(AccessDeniedException e) {
return "{\"status\":\"access denied\"}";
}
}