Ich benutze RestTemplate, um einen Dienst zu konsumieren.RestTemplate funktioniert nicht mit APPLICATION_FORM_URLENCODED und Request Pojo
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
HttpEntity request = new HttpEntity(countryRequest, headers);
CountryResponse response = restTemplate.postForObject(countryURL, request, CountryResponse.class);
countryRequest
ist ein Objekt eines POJO mit nur einem String-Feld code
. restTemplate
hat jackson2HttpMessageConverter
und FormHttpMessageConverter
in messageConverters
.
Ich erhalte die folgende Ausnahme:
org.springframework.web.client.RestClientException:
Could not write request: no suitable HttpMessageConverter found for request type [CountryRequest] and content type [application/x-www-form-urlencoded]
Aber wenn ich MultiValueMap
statt CountryRequest
verwenden, bekam ich die 200 Antwort:
MultiValueMap<String, String> map= new LinkedMultiValueMap<>();
map.add(code, "usa");
HttpEntity<MultiValueMap<String, String>> request = new HttpEntity(map, headers);
Gibt es eine Möglichkeit, die MultiValueMap
Ansatz hier zu ersetzen ?