У меня появилось поведение, которое я не понимаю в приложении с использованием Spring и углового. Исключением является бросок в HTTP-запросе. Я сделал тест ниже.
@RequestMapping(value = "/contract/upload/excel", method = RequestMethod.POST)
public String uploadContractExcel(HttpServletRequest request, ModelMap model) {
if(true) {
throw new RuntimeException("my code is broken");
}
...
В JavaScript в функции $ HTTP вместо того чтобы идти в блок ошибок, он возвращается к блоку успеха с кодом состояния 200 - OK. Поэтому я не могу справиться с каким-либо исключением.
$http({
method : 'POST',
url : resolveAjax,
data : formData
}).then(
function successCallback(response) {
var data = response.data;
if (data.upload_error === "true") {
$scope.busy = false;
$scope.upload_error_message = data.upload_error_message;
} else {
$scope.contractSummary = angular
.fromJson(data.reference_excel_resolved);
$scope.busy = false;
$scope.tabindex = $scope.tabindex * 1 + 1;
}
},
function errorCallback(response) {
$scope.upload_error_message = 'Oups something went wrong';
});
У кого-нибудь есть представление о том, что происходит? Спасибо
ок большого спасибо за ваши объяснения. Я думал, что исключение вернет по умолчанию код, отличный от 200 в контроллере. Я проверю это. –
Добро пожаловать, попробуйте и дайте мне знать. –