У меня есть микросервис A, который вызывает другую службу B. Я пытаюсь обработать сообщение об ошибке, используя @ExceptionHandler
.
Я хочу передать сообщение об ошибке, полученное от B, в службу A. Но в ответе на остальной вызов он дает код HttpStatus, но без тела (ноль). Ниже приведен снимок:
Ответ от службы B в почтальоне приведен ниже. Я хочу получить такое же сообщение об ошибке в моей службе A.
Ниже приведен мой код:
RestServiceCall. java
public List<AccessResponse> daxObjectAccessibilitycall(AccessDataObject requestEntity) {
ResponseEntity<AccessResponse[]> responseEntity = restTemplate.postForEntity(getFullPathService(), requestEntity, AccessResponse[].class);
if (responseEntity == null) {
return Collections.emptyList();
}
AccessResponse[] accessResponse = responseEntity.getBody();
return Arrays.asList(accessResponse);
}
Во время обработки ошибок выдается исключение, которое обрабатывается в этом коде:
public boolean myFoo(MyDto){
.
.
.
try {
myObjectAccessibilitycall = serviceCall.objectAccessibilitycall(accessDataObj);
} catch (RestClientException e) {
logger.error("Error while getting response from Accessibility", e);
throw new myException("Error: ", e);
}
if (!CollectionUtils.isEmpty(myObjectAccessibilitycall )) {
for (AccessResponse accessResponse : myObjectAccessibilitycall ) {
accessFlag = accessResponse.isResponseMsg();
}
}
return accessFlag;
}
Оцените любую помощь по этому вопросу. Ура!