有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在使用RestTemplate时如何映射ResponseEntity中的响应对象?

比方说,我有两个微服务MS1和MS2,我正在使用RestClient从MS1呼叫MS2

MS1中的代码:

public ResponseEntity<ResponeTypeOne> saveResponse(List<Review> request) {
        String url = getReviewRestServiceEndPoint() + "/ms2/save/";
        return  restTemplate.postForEntity(url, request, ResponeTypeOne.class);
    }

MS2中的代码:从MS2,我想发送不同的自定义错误对象(仅供参考:在异常情况下)

@ExceptionHandler(MyCustomException.class)
    public ResponseEntity<ErrorOutputMessage> handleException(MyCustomException ex){
        return new ResponseEntity<>(new ErrorOutputMessage(ex.getCode(),ex.getMessage()),HttpStatus.BAD_REQUEST);
    }

谁能告诉我ResponeTypeOneErrorOutputMessage的映射在以下情况下是如何发生的:

  1. When fields in both objects are same.
  2. When fields in both objects are different.

共 (1) 个答案

  1. # 1 楼答案

    RestTemplateDefaultResponseErrorHandler,当出现客户机/服务器错误时会引发异常(不成功的状态代码)