В веб-контроллере у меня есть реализация @ExceptionHandler для обработки определенного типа исключения устройства, которое я могу получить. Это выглядит так:
@ExceptionHandler(DeviceException.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
@ResponseBody
public void handleException(DeviceException ex) {
log.error("controller caught exception " + ex.getMessage());
return ex.getMessage();
}
Чего я хочу добиться - это вернуть сообщение об исключении, когда выдается исключение DeviceException.
На стороне клиента у меня есть этот код jQuery, в настоящее время проблема в том, что я не могу получить какой-либо контент ex.getMessage () в обратном вызове ошибки, вот что мне нужно решить.
$.ajax( {
type: "GET",
url: "<c:url value="/x/y/status"/>.json",
dataType: "json",
cache: false,
success: function ( data ){
// use the data
},
error: function(jqXHR, textStatus, errorThrown) {
// problem : all 3 of the data below (responseText etc.) are blank when I've thrown a DeviceException
alert('jqXHR.responseText = ', jqXHR.responseText);
alert('textStatus = ', textStatus);
alert('errorThrown = ', errorThrown);
}
} );