Bonjour
je ne parviens pas à établir une connexion https en java avec apache HttpClient
J'ai testé avec camel que je connais bien et je suis parvenu au résultat. mais en java simple (vu que je n'ai pas camel dans la cible)
Je me suis connecté sur le serveur avec mon navigateur et j'ai accès à une page avec le certificat validé.
J'ai enregistré le certificat dans un fichier .cer
Jai utilisé keytool pour créer un fichier trustStore.jks
J'ai systématiquement une erreur
Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 URI trustStore = getClass().getClassLoader().getResource("trustStore.jks").toURI(); SSLContext sslcontext = SSLContexts.custom() .loadTrustMaterial(new File(trustStore), "******".toCharArray()) .build(); SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext, SSLConnectionSocketFactory.getDefaultHostnameVerifier()); CloseableHttpClient httpclient = HttpClients.custom() .setProxy(new HttpHost("myproxy", 8080)) .setSSLSocketFactory(sslsf) .build(); CloseableHttpResponse response = httpclient.execute(new HttpGet("https://service.annuaire.sante.fr/")); InputStream is = response.getEntity().getContent(); byte[] b = new byte[100000]; is.read(b); System.err.println(b.toString());
Resolving javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed Error
Partager