From cb119fb653f47ac8eb65bbc1503b4d9f794eff8e Mon Sep 17 00:00:00 2001 From: john-mcpeek Date: Thu, 7 Sep 2017 08:58:46 -0400 Subject: [PATCH] Update configuration.asciidoc This example doesn't explain where the sslcontext comes from and doesn't use the keystore (truststore) that you loaded just above it. This was very confusing until I figured that out. --- docs/java-rest/configuration.asciidoc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/java-rest/configuration.asciidoc b/docs/java-rest/configuration.asciidoc index 5fc6d37daa846..083b828dd5a4a 100644 --- a/docs/java-rest/configuration.asciidoc +++ b/docs/java-rest/configuration.asciidoc @@ -116,10 +116,14 @@ https://hc.apache.org/httpcomponents-asyncclient-dev/httpasyncclient/apidocs/org [source,java] -------------------------------------------------- -KeyStore keystore = KeyStore.getInstance("jks"); +KeyStore truststore = KeyStore.getInstance("jks"); try (InputStream is = Files.newInputStream(keyStorePath)) { - keystore.load(is, keyStorePass.toCharArray()); + truststore.load(is, keyStorePass.toCharArray()); } + +SSLContextBuilder sslBuilder = SSLContexts.custom().loadTrustMaterial( truststore, null ); +SSLContext sslContext = sslBuilder.build(); + RestClient restClient = RestClient.builder(new HttpHost("localhost", 9200)) .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() { @Override