Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- org.springframework.web.client.ResourceAccessException: I/O error on GET request for "URL-A": null; nested exception is org.apache.http.client.ClientProtocolException
- at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:673)
- at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:620)
- at org.springframework.web.client.RestTemplate.getForEntity(RestTemplate.java:319)
- ....
- ...
- ...
- Caused by: org.apache.http.client.ClientProtocolException: null
- at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:186)
- at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
- at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
- at org.springframework.http.client.HttpComponentsClientHttpRequest.executeInternal(HttpComponentsClientHttpRequest.java:89)
- at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48)
- at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:53)
- at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:659)
- ... 96 common frames omitted
- Caused by: org.apache.http.ProtocolException: The server failed to respond with a valid HTTP response
- at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:151)
- at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57)
- at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259)
- at org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:163)
- at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:167)
- at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:273)
- at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125)
- at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:271)
- at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
- at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
- at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
- at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
- ... 102 common frames omitted
- @Bean
- public ObjectMapper objectMapper() {
- ObjectMapper objectMapper = new ObjectMapper();
- objectMapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
- objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
- objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
- objectMapper.configure(DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES, false);
- objectMapper.configure(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE, false);
- objectMapper.enable(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT);
- return objectMapper;
- }
- @Bean
- public RestTemplate getRestTemplate() {
- RestTemplate newTemplate = new RestTemplate();
- newTemplate.setRequestFactory(this.getHttpComponentsClientHttpRequestFactory());
- ObjectMapper objectMapper = this.objectMapper();
- MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
- jackson2HttpMessageConverter.setObjectMapper(objectMapper);
- List<HttpMessageConverter<?>> messageConverters = new ArrayList<>();
- messageConverters.add(new StringHttpMessageConverter());
- messageConverters.add(jackson2HttpMessageConverter);
- messageConverters.add(new ByteArrayHttpMessageConverter());
- newTemplate.setMessageConverters(messageConverters);
- return newTemplate;
- }
- private HttpComponentsClientHttpRequestFactory getHttpComponentsClientHttpRequestFactory() {
- PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager();
- poolingHttpClientConnectionManager.setMaxTotal(maxTotal);
- poolingHttpClientConnectionManager.setDefaultMaxPerRoute(maxPerRoute);
- HttpClient client = HttpClients.custom().setConnectionManager(poolingHttpClientConnectionManager).build();
- HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(client);
- factory.setConnectTimeout(connectTimeout);
- factory.setReadTimeout(readTimeout);
- return factory;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement