Я устанавливаю метод для обработки исключений, и я хочу вернуть объект, если это ajax-запрос.Если это не так, я хочу вернуть представление в моем весеннем загрузочном веб-приложении.Он успешно возвращает представление, но когда возвращает объект, ответом является стек, выданный исключением.
@ControllerAdvice
public class GenericExceptionHandler {
@ExceptionHandler(value = Exception.class)
@ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)
protected Object handleConflict(RuntimeException ex, WebRequest request) {
if (isAjaxRequest(request)) {
AjaxResult aResult = new AjaxResult();
aResult.setStatus(Status.ERROR);
aResult.setMessage(NoticeMessages.ERROR);
return aResult;
}
return "503";
}
private boolean isAjaxRequest(WebRequest request) {
return "XMLHttpRequest".equals(request.getHeader("X-Requested-With"));
}
}