static TimeoutRestTemplate createRestTemplate(int readTimeout, int connectTimeout) { HttpComponentsClientHttpRequestFactory factory = new TimeoutHttpComponentsClientHttpRequestFactory(); factory.setReadTimeout(readTimeout); factory.setConnectTimeout(connectTimeout); SSLContext sslContext = DefaultSSLVerifier.getSSLContext(DefaultSSLVerifier.trustAllCerts); if (sslContext != null) { factory.setHttpClient(HttpClients.custom() .setSSLHostnameVerifier(new NoopHostnameVerifier()) .setSSLContext(sslContext) .build()); } TimeoutRestTemplate template = new TimeoutRestTemplate(factory); StringHttpMessageConverter stringHttpMessageConverter = new StringHttpMessageConverter(StandardCharsets.UTF_8); stringHttpMessageConverter.setWriteAcceptCharset(true); for (int i = 0; i < template.getMessageConverters().size(); i++) { if (template.getMessageConverters().get(i) instanceof StringHttpMessageConverter) { template.getMessageConverters().remove(i); template.getMessageConverters().add(i, stringHttpMessageConverter); break; } } return template; } }
@Bean public HttpComponentsClientHttpRequestFactory clientHttpRequestFactory() { HttpComponentsClientHttpRequestFactory rf = new HttpComponentsClientHttpRequestFactory(); rf.setHttpClient(httpClient); return rf; }
private RestTemplate createRestTemplate() throws Exception { final String username = "myusername"; final String password = "myPass"; final String proxyUrl = "proxy.nyc.bigtower.com"; final int port = 8080; CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials( new AuthScope(proxyUrl, port), new UsernamePasswordCredentials(username, password)); HttpHost myProxy = new HttpHost(proxyUrl, port); HttpClientBuilder clientBuilder = HttpClientBuilder.create(); clientBuilder.setProxy(myProxy).setDefaultCredentialsProvider(credsProvider).disableCookieManagement(); HttpClient httpClient = clientBuilder.build(); HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(); factory.setHttpClient(httpClient); return new RestTemplate(factory); }
private HttpComponentsClientHttpRequestFactory getNonValidatingRequestFactory() throws KeyManagementException, NoSuchAlgorithmException, KeyStoreException { if (nonValidatingRequestFactory == null) { TrustStrategy acceptingTrustStrategy = (X509Certificate[] chain, String authType) -> true; SSLContext sslContext = org.apache.http.ssl.SSLContexts.custom() .loadTrustMaterial(null, acceptingTrustStrategy).build(); SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(sslContext); CloseableHttpClient httpClient = HttpClients.custom().setSSLSocketFactory(csf).build(); nonValidatingRequestFactory = new HttpComponentsClientHttpRequestFactory(); nonValidatingRequestFactory.setHttpClient(httpClient); } return nonValidatingRequestFactory; } }
private HttpComponentsClientHttpRequestFactory getNonValidatingRequestFactory() throws KeyManagementException, NoSuchAlgorithmException, KeyStoreException { if (nonValidatingRequestFactory == null) { TrustStrategy acceptingTrustStrategy = (X509Certificate[] chain, String authType) -> true; SSLContext sslContext = org.apache.http.ssl.SSLContexts.custom() .loadTrustMaterial(null, acceptingTrustStrategy).build(); SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(sslContext); CloseableHttpClient httpClient = HttpClients.custom().setSSLSocketFactory(csf).build(); nonValidatingRequestFactory = new HttpComponentsClientHttpRequestFactory(); nonValidatingRequestFactory.setHttpClient(httpClient); } return nonValidatingRequestFactory; } }
public void tryme() throws ClientProtocolException, IOException { String urlOverHttps = "https:xxxxxxx"; CloseableHttpClient httpClient = HttpClients.custom() .setSSLHostnameVerifier(new NoopHostnameVerifier()) .build(); HttpComponentsClientHttpRequestFactory reqFactory = new HttpComponentsClientHttpRequestFactory(); reqFactory.setHttpClient(httpClient); ResponseEntity<String> response = new RestTemplate(reqFactory).exchange( urlOverHttps, HttpMethod.GET, null, String.class); String responseCode = response.getStatusCode(); }
private HttpComponentsClientHttpRequestFactory buildHttpRequestFactoryWithoutSSLVerification() throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException { TrustStrategy acceptingTrustStrategy = (X509Certificate[] chain, String authType) -> true; SSLContext sslContext = org.apache.http.ssl.SSLContexts.custom() .loadTrustMaterial(null, acceptingTrustStrategy) .build(); SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(sslContext); CloseableHttpClient httpClient = HttpClients.custom() .setSSLSocketFactory(csf) .setSSLHostnameVerifier(new NoopHostnameVerifier()) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient(httpClient); return requestFactory; } }
public static ClientHttpRequestFactory createRequestFactory(String proxyHost, int proxyPort) { HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory() { @Override protected HttpContext createHttpContext(HttpMethod httpMethod, URI uri) { HttpClientContext context = new HttpClientContext(); context.setAttribute("http.protocol.expect-continue", false); return context; } }; if (proxyHost != null) { HttpHost proxy = new HttpHost(proxyHost, proxyPort); CloseableHttpClient httpClient = isAllTrust ? getAllTrustClient(proxy) : getClient(proxy); requestFactory.setHttpClient(httpClient); } return requestFactory; }
final HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(); final HttpClient httpClient = HttpClientBuilder.create().setRedirectStrategy( new DefaultRedirectStrategy() { @Override public boolean isRedirected(HttpRequest request, HttpResponse response, HttpContext context) throws ProtocolException { return false; } } ).build(); factory.setHttpClient(httpClient); restTemplate.setRequestFactory(factory);
RestTemplate restTemplate = new RestTemplate(); CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials( new AuthScope("proxyHost", "proxyPort"), new UsernamePasswordCredentials("proxyUser", "proxyPass") ); HttpClientBuilder clientBuilder = HttpClientBuilder.create(); clientBuilder.useSystemProperties(); clientBuilder.setProxy(new HttpHost("proxyHost", "proxyPort")); clientBuilder.setDefaultCredentialsProvider(credsProvider); clientBuilder.setProxyAuthenticationStrategy(new ProxyAuthenticationStrategy()); CloseableHttpClient client = clientBuilder.build(); HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(); factory.setHttpClient(client); restTemplate.setRequestFactory(factory);
public static ClientHttpRequestFactory createRequestFactory(String proxyHost, int proxyPort) { HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory() { @Override protected HttpContext createHttpContext(HttpMethod httpMethod, URI uri) { HttpClientContext context = new HttpClientContext(); context.setAttribute("http.protocol.expect-continue", false); return context; } }; if (proxyHost != null) { HttpHost proxy = new HttpHost(proxyHost, proxyPort); CloseableHttpClient httpClient = isAllTrust ? getAllTrustClient(proxy) : getClient(proxy); requestFactory.setHttpClient(httpClient); } return requestFactory; }
public static ClientHttpRequestFactory createRequestFactory(String proxyHost, int proxyPort) { HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory() { @Override protected HttpContext createHttpContext(HttpMethod httpMethod, URI uri) { HttpClientContext context = new HttpClientContext(); context.setAttribute("http.protocol.expect-continue", false); return context; } }; if (proxyHost != null) { HttpHost proxy = new HttpHost(proxyHost, proxyPort); CloseableHttpClient httpClient = isAllTrust ? getAllTrustClient(proxy) : getClient(proxy); requestFactory.setHttpClient(httpClient); } return requestFactory; }
RequestConfig requestConfig = RequestConfig.custom() .setCircularRedirectsAllowed(true) .build(); HttpClient httpClient = HttpClients.custom() .setDefaultRequestConfig(requestConfig) .setRedirectStrategy(new LaxRedirectStrategy()) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient(httpClient);
public static RestTemplate createSslRestTemplate(final KeyStore keyStore, final String ksPass, final PrivateKeyStrategy keyStrategy, final KeyStore trustStore, TrustStrategy trustStrategy, final Integer readTimeout, final Integer connectionTimeout, final boolean allowCached) throws Exception { SSLContext sslContext = getSSLContext(keyStore, ksPass, keyStrategy, trustStore, trustStrategy, allowCached); // here in the constructor, also hostname verifier, protocol version, cipher suits, etc. can be specified SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext); HttpClient httpClient = HttpClients.custom()//.useSystemProperties() .setSSLSocketFactory(sslConnectionSocketFactory).build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); if (readTimeout != null) { requestFactory.setReadTimeout(readTimeout.intValue()); } if (connectionTimeout != null) { requestFactory.setConnectTimeout(connectionTimeout.intValue()); } requestFactory.setHttpClient(httpClient); RestTemplate restTemplate = new RestTemplate(requestFactory); return restTemplate; }
public static RestTemplate createSslRestTemplate(TrustStrategy trustStrategy, final Integer readTimeout, final Integer connectionTimeout) throws Exception { SSLContext sslContext = new SSLContextBuilder() .loadTrustMaterial(null, // if // trustStore is null, default CAs trust store is used trustStrategy) .build(); // here in the constructor, also hostname verifier, protocol version, cipher suits, etc. can be specified SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext); HttpClient httpClient = HttpClients.custom()//.useSystemProperties() .setSSLSocketFactory(sslConnectionSocketFactory).build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); if (readTimeout != null) { requestFactory.setReadTimeout(readTimeout.intValue()); } if (connectionTimeout != null) { requestFactory.setConnectTimeout(connectionTimeout.intValue()); } requestFactory.setHttpClient(httpClient); RestTemplate restTemplate = new RestTemplate(requestFactory); return restTemplate; }
@Bean @ConditionalOnClass(HttpClient.class) public RestTemplate sslRestTemplate(SidecarProperties properties) { RestTemplateBuilder builder = new RestTemplateBuilder(); if(properties.acceptAllSslCertificates()) { CloseableHttpClient httpClient = HttpClients.custom() .setSSLHostnameVerifier(new NoopHostnameVerifier()) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient(httpClient); builder = builder.requestFactory(() -> requestFactory); } return builder.build(); }
private RestTemplate configureRestTemplate() { CloseableHttpClient httpClient = HttpClients.custom() .setSSLHostnameVerifier(new NoopHostnameVerifier()) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient(httpClient); requestFactory.setConnectTimeout(dockerValidatiorProperties.getConnectTimeoutInMillis()); requestFactory.setReadTimeout(dockerValidatiorProperties.getReadTimeoutInMillis()); RestTemplate restTemplate = new RestTemplate(requestFactory); return restTemplate; }
private HttpComponentsClientHttpRequestFactory getRequestFactory(int maxConnPerRoute, int maxConnTotal, int connectTimeoutInMs) { HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); CloseableHttpClient httpClient = HttpClients.custom() .setSSLHostnameVerifier(new NoopHostnameVerifier()) .setMaxConnPerRoute(maxConnPerRoute) .setMaxConnTotal(maxConnTotal) .build(); requestFactory.setHttpClient(httpClient); requestFactory.setConnectTimeout(connectTimeoutInMs); return requestFactory; }
private RestTemplate configureRestTemplate() { CloseableHttpClient httpClient = HttpClients.custom() .setSSLHostnameVerifier(new NoopHostnameVerifier()) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient(httpClient); requestFactory.setConnectTimeout(dockerValidatiorProperties.getConnectTimeoutInMillis()); requestFactory.setReadTimeout(dockerValidatiorProperties.getReadTimeoutInMillis()); RestTemplate restTemplate = new RestTemplate(requestFactory); return restTemplate; }
public AbstractRestTemplateClient ignoreAuthenticateServer() { //backward compatible with android httpclient 4.3.x if(restTemplate.getRequestFactory() instanceof HttpComponentsClientHttpRequestFactory) { try { SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustSelfSignedStrategy()).build(); X509HostnameVerifier verifier = ignoreSslWarning ? new AllowAllHostnameVerifier() : new BrowserCompatHostnameVerifier(); SSLConnectionSocketFactory socketFactory = new SSLConnectionSocketFactory(sslContext, verifier); HttpClient httpClient = HttpClients.custom().setSSLSocketFactory(socketFactory).build(); ((HttpComponentsClientHttpRequestFactory)restTemplate.getRequestFactory()).setHttpClient(httpClient); } catch (Exception e) { e.printStackTrace(); } } else { Debug.error("the request factory " + restTemplate.getRequestFactory().getClass().getName() + " does not support ignoreAuthenticateServer"); } return this; }