Comment définir par programmation la SSLContext de JAX-WS client?

Je suis en train de travailler sur un serveur dans une application distribuée qui a des clients de navigateur et participe également à de serveur-à-serveur de communication avec une 3ème partie.
Mon serveur a un CA-certificat de signature pour laisser à mes clients de se connecter à l'aide du protocole TLS (SSL) de communication à l'aide de HTTP/S et XMPP(sécurisé). C'est tous fonctionne bien.

Maintenant, j'ai besoin de connecter de manière sécurisée à une 3ème partie serveur à l'aide de JAX-WS sur HTTPS/SSL. Dans cette communication, mon serveur agit comme client dans le JAX-WS interaction et j'ai un client certificat signé par la 3ème partie.

J'ai essayé d'ajouter un nouveau fichier de stockage des clés par le biais de la configuration du système standard (-Djavax.net.ssl.keyStore=xyz) mais mes autres composants sont clairement affectée par cette. Bien que mes autres composants sont dédiés les paramètres de leur configuration SSL (my.xmpp.keystore=xxx, my.xmpp.truststore=xxy, ...), il semble qu'ils finissent par utiliser le mondial SSLContext. (La configuration de l'espace de noms my.xmpp. semble indiquer la séparation, mais il n'est pas le cas)

J'ai aussi essayé d'ajouter mon certificat client dans mon fichier de clés d'origine, mais -encore une fois - mes autres composants ne semblent pas non plus.

Je pense que ma seule option est de programmation pour accrocher dans le JAX-WS HTTPS configuration pour configurer le fichier de clés et truststore pour le client JAX-WS interaction.

Toutes les idées/conseils sur la façon de faire cela? Tous les renseignements que je trouve utilise le javax.net.ssl.keyStore méthode ou est l'échelon mondial SSLContext qui -je pense - se retrouvent dans la même confilc. Le plus proche que je suis arrivé à quelque chose d'utile a ce vieux rapport de bug que les demandes de la fonction dont j'ai besoin: Ajout du support pour le passage d'un SSLContext de JAX-WS client runtime

Tout prend?

Le rapport de bug dit un correctif sera disponible en 2.1.1.
Ce rapport de bug est plutôt une demande de fonctionnalité et de ne pas parler de la façon dont il devrait être fait.

OriginalL'auteur maasg | 2012-06-12