Допустим, у меня есть два микросервиса MS1 и MS2, и я звоню из MS1 в MS2 с помощью RestClient.
Код в MS1:
public ResponseEntity<ResponeTypeOne> saveResponse(List<Review> request) {
String url = getReviewRestServiceEndPoint() + "/ms2/save/";
return restTemplate.postForEntity(url, request, ResponeTypeOne.class);
}
Код в MS2: Из MS2 я хочу отправить другой объект ошибки (FYI: в случае исключения)
@ExceptionHandler(MyCustomException.class)
public ResponseEntity<ErrorOutputMessage> handleException(MyCustomException ex){
return new ResponseEntity<>(new ErrorOutputMessage(ex.getCode(),ex.getMessage()),HttpStatus.BAD_REQUEST);
}
Может кто-нибудь сказать, как происходит сопоставление ResponeTypeOne
и ErrorOutputMessage
в следующих случаях:
- Когда поля в обоих объектах одинаковы.
- Когда поля в обоих объектах разные.