Spring Boot RestTemplate Составной ответ Пустой список - PullRequest
0 голосов
/ 23 октября 2018

Итак, я разрабатываю некоторые микроуслуги в JAVA с помощью Spring Boot и сталкиваюсь с некоторыми проблемами, связанными с объектами, которые я использую.

Итак, у меня есть служба данных, которая является интерфейсом БД и расписаниемсервис, который будет вызывать интерфейс.Оба работают со своими собственными объектами Response и Request, хотя на данный момент они в основном одинаковы.

Пожалуйста, не обращайте внимания на то, что в приведенном ниже коде нет методов получения и установки.

Служба данных

@RestController
@RequestMapping("")
public class DataServiceResource {

  @GetMapping(...)
  public ResponseEntity<JobDetailsResponse> getJobDetailsSingleDate(@PathVariable("singledate") final String date) {

    ...
    return response;

  }

}

JobDetailsResponse

@JsonIgnoreProperties(ignoreUnknown = true)
public class JobDetailsResponse {

    private Object requestSent;
    private List<Job> jobsFound;
    private boolean hasError;

    private String errorMessage;
    private LocalDateTime dataTimestamp;

}

JobDetailsSingleDateRequest

@JsonIgnoreProperties(ignoreUnknown = true)
public class JobDetailsSingleDateRequest {
    private String dateFrom;
}

Служба планирования

@RestController
@RequestMapping("")
public class SchedulingServiceResource {

  ...

  @Autowired
  private RestTemplate restTemplate;


  @GetMapping(...)
  public ResponseEntity<ReportDetailsResponse> getReportDetailsSingleDate(@PathVariable("singledate") final String singledate) {

    ResponseEntity<ReportDetailsResponse> quoteResponse = this.restTemplate.exchange(DATA_SERVICE_JOB_DETAILS_SINGLE_DATE_URL + singledate, HttpMethod.GET,
                null, new ParameterizedTypeReference<ReportDetailsResponse>() {});

    ...
    return response;

}

ReportDetailsSingleDateRequest

@JsonIgnoreProperties(ignoreUnknown = true)
public class ReportDetailsSingleDateRequest {
    private String dateFrom;
}
* 1021SponseDese1022 *
@JsonIgnoreProperties(ignoreUnknown = true)
public class ReportDetailsResponse {

    private Object requestSent;
    private List<Job> jobsFound;
    private boolean hasError;

    private String errorMessage;
    private LocalDateTime dataTimestamp;

}

Поэтому, когда я иду по методу quoteResponse.getBody().getJobsFound(), чтобы проверить данные, полученные из службы данных, Мой список заданий пуст.Я читал, что если объекты равны по определению, Spring будет использовать отражение для передачи значений, но в моем случае это не пробуждение.

Есть ли способ использовать микросервис без необходимости добавления зависимости службы данныхв службу планирования?

Извините за длинный пост, но до сих пор я не нашел подходящего примера для своего случая.Все примеры, которые я нашел, работают со списком как возврат микросервиса.

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...