Saltar al contenido

Solicitud RestTemplate PATCH

Después de consultar con expertos en la materia, programadores de deferentes áreas y maestros dimos con la respuesta a la cuestión y la compartimos en este post.

Solución:

Resolví este problema simplemente agregando un nuevo HttpRequestFactory a mi instancia de restTemplate. Como esto

RestTemplate restTemplate = new RestTemplate();

HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
requestFactory.setConnectTimeout(TIMEOUT);
requestFactory.setReadTimeout(TIMEOUT);

restTemplate.setRequestFactory(requestFactory);

Para TestRestTemplate, agregue

@Autowired
private TestRestTemplate restTemplate;

@Before
public void setup() 
    restTemplate.getRestTemplate().setRequestFactory(new HttpComponentsClientHttpRequestFactory());

PD: necesitará agregar el componente httpClient en su proyecto


    org.apache.httpcomponents
    httpclient
    4.4.1

Para los casos en que RestTemplate se construye a partir de un RestTemplateBuilderel constructor para el RestClient personalizado se puede escribir como,

public PersonRestClient(RestTemplateBuilder restTemplateBuilder) 
  this.restTemplate = restTemplateBuilder.requestFactory(new HttpComponentsClientHttpRequestFactory()).build();

También el org.apache.httpcomponents.httpclient la dependencia debe agregarse a pom.

He agregado el siguiente código en el archivo java. Funcionó para mí.

String url="Your API URL";
RestTemplate restTemplate = new RestTemplate();
HttpClient httpClient = HttpClientBuilder.create().build();
restTemplate.setRequestFactory(new 
HttpComponentsClientHttpRequestFactory(httpClient));    
HttpHeaders reqHeaders = new HttpHeaders();
reqHeaders.setContentType(MediaType.APPLICATION_JSON);
HttpEntity requestEntity = new HttpEntity(requestJson, reqHeaders);
ResponseEntity responseEntity=restTemplate.exchange(url, HttpMethod.PATCH, 
requestEntity, String.class);

Además, debe agregar la dependencia a continuación en el archivo pom.xml.


    org.apache.httpcomponents
    httpclient

Si para ti ha sido de utilidad nuestro artículo, sería de mucha ayuda si lo compartieras con el resto entusiastas de la programación de esta manera nos ayudas a difundir nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *