Bonjour,
Je rencontre un problème au moment du déploiement de mon EAR sous GlassFish.
J'ai un code Java qui réalise une connection a un WebService en utilisant un certificat P12.
La connexion et le lancement de la requête fonctionne très bien en lançant un test unitaire via Eclipse et Junit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 sc = SSLContext.getInstance("SSLv3"); KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm()); KeyStore ks = KeyStore.getInstance("PKCS12"); ks.load(new FileInputStream("certif.p12"), SSLKEY.toCharArray()); kmf.init(ks, SSLKEY.toCharArray()); sc.init(kmf.getKeyManagers(), null, null); ((BindingProvider) fmsPort).getRequestContext().put( "com.sun.xml.internal.ws.transport.https.client.SSLSocketFactory", sc.getSocketFactory());
Maintenant ce JAR, je l'ajoute a mon EAR.
Je déploie mon EAR.
Je sollicite la connexion aux services Web via le même certificat p12 en le mettant simplement dans le dossier : domains/domain1/config/
Je me retrouve avec l'erreur suivante : erreur de transport HTTP : javax.net.ssl.SSLHandshakeException: Received fatal alert: bad_certificate
Je pense louper totalement quelque chose et les recherches sur le net me renvoie vers le paramétrage GlassFish pour recevoir des connexions SSL alors que je veux simplement pouvoir accéder a des services via SSL P12.
Vous vous doutez que je suis un peu nouveau sur GlassFish et qui plus est dans les certificats.
Si vous avez une idée, ça m'enlèverai une épine du pied !
Merci d'avance la communauté !
TeqPaf !
PS : Si vous avez besoin que j'étoffe un peu n'hésitez pas !
Merci déjà que vous vous penchiez sur mon problème !
Partager