Я пытаюсь перепроектировать рабочий кусок программного обеспечения, чтобы получить необработанный HTTP-запрос, чтобы я мог запустить его с помощью Postman или другого HTTp-клиента.
import org.springframework.security.oauth2.client.OAuth2RestOperations;
private OAuth2RestOperations restTemplate;
@Autowired
public void setRestTemplate(OAuth2RestOperations restTemplate) {
this.restTemplate = restTemplate;
}
private QuoteWorkflowResponse saveQuote(IQuoteRequest request) {
RequestEntity<IQuoteRequest> requestEntity = RequestEntity.post(getPathToPurchaseUrl(request))
.body(request);
ResponseEntity<QuoteWorkflowResponse> responseEntity = restTemplate.exchange(requestEntity, QuoteWorkflowResponse.class);
if (responseEntity.getStatusCode() != HttpStatus.OK) {
handleError(responseEntity);
}
return responseEntity.getBody();
}
Это каким-то образом использует Barrer Токен, я извлек токен с помощью отладчика и проверил его в почтальоне, и он работает.
Мой вопрос здесь, почему restTemplate.exchange вызывает исключение ResourceAccessException? что это значит ? и как я могу это исправить?
Исключение это бросает:
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://somehost/aabb/sales/quote": stream is closed; nested exception is java.io.IOException: stream is closed