Я согласен с @Michiel on, параметр метода (AccessDeniedException ex) должен быть родительским классом для следующих классов:
- AccessDeniedException
- NotFoundException
попробуйте это
@ExceptionHandler({ AccessDeniedException.class, NotFoundException.class })
public ResponseEntity<ErrorResponseDTO> accessDeniedExceptionHandler(final **Exception** ex) {
......
}
Я использовал @ControllerAdvice, например
@ControllerAdvice
public class GlobalControllerExceptionHandler {
@ExceptionHandler({BadRequestException.class, IllegalArgumentException.class, MaxUploadSizeExceededException.class})
@ResponseBody
public ResponseEntity<ErrorResponse> handleBadRequestException(Exception exception, WebRequest request) {
String message = StringUtils.isEmpty(exception.getMessage()) ? properties.getGeneralMessages().get("fail") : exception.getMessage();
if (message.contains(";"))
message = message.substring(0, message.indexOf(";"));
return getResponseEntity(message, null);
}
}