2009-11-16 3 views
0

Je suis en train d'utiliser des classes générées JAX-WS (créé à l'aide wsimport) à appel un webservice via une connexion HTTPS à partir d'un composant Java dans le serveur d'applications Sybase EAServer 5.3. Je reçois une exception dans le journal EAServer avec comme cause sous-jacente (j'ai supprimé l'URL du service Web ).Connexion à WebService via HTTPS lancers francs SCL Profil Erreur d'allocation

2009-11-15 18:39:58,338: ALL [Thread-19] - Caused by: 
java.io.IOException: https://www.<my website url>.com:443: SCL profile 
allocation 
2009-11-15 18:39:58,338: ALL [Thread-19] - at 
com.sybase.jaguar.net.HttpsURLConnection.getInputStream(HttpsURLConnection.java:521) 
2009-11-15 18:39:58,338: ALL [Thread-19] - at 
java.net.URL.openStream(Unknown Source) 
2009-11-15 18:39:58,338: ALL [Thread-19] - at 
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.createReader(RuntimeWSDLParser.java:804) 
2009-11-15 18:39:58,338: ALL [Thread-19] - at 
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.resolveWSDL(RuntimeWSDLParser.java:262) 
2009-11-15 18:39:58,338: ALL [Thread-19] - at 
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:129) 
2009-11-15 18:39:58,338: ALL [Thread-19] - ... 18 more 

Je suis assez sûr que ce soit parce que je dois mettre en place EAServer d'accepter le certificat SSL de ce site. Le code de connexion lui-même est tous générés par Jax-WS donc je ne crée pas réellement la connexion moi-même. Il a lieu dans les classes générées.

Toute idée comment configurer correctement EAServer afin que com.sybase.jaguar.net.HttpsURLConnection.getInputStream va créer avec succès une connexion HTTPS à l'extrémité de la webservice?

Répondre

0

J'ai travaillé avec le support Sybase pour résoudre ce problème. Il s'agissait de mettre à jour EAServer pour utiliser le fournisseur de sécurité Sun au lieu de celui de Sybase. Dans les Jaguar.props nous avons modifié les options JVM être:

com.sybase.jaguar.server.jvm.options=-Djava.protocol.handler.pkgs=sun.security.provider.Sun|com.sun.net.ssl.internal.ssl 

Cela laisse utiliser le fournisseur de sécurité Sun et je me suis arrêté à recevoir le message SCL profile allocation.

Après avoir fait cela, je commencé à recevoir NullPointerExceptions des cours JAX-WS dans le journal (que je CONFIRMÉS était liée à la configuration JAX-WS pour une utilisation dans EAServer, rien à voir avec le SSL Webservice).

je devais ajouter mon pot produit de talons de webservice (que j'ai créé à l'aide wsimport) à la propriété Jaguar.props com.sybase.jaguar.server.java.classes

J'ai aussi ajouté ce produit pot de talons et les bibliothèques d'exécution JAX-WS au 2 propriétés Jaguar.props com.sybase.jaguar.server.jvm.bootclasspath.jars et com.sybase.jaguar.server.jvm.classpath.jars

Ensuite, j'ai copié les bibliothèques d'exécution JAX-WS et mon pot de talons webservice généré dans le répertoire C:\Sybase\EAServer\java\lib et tout a commencé à travailler comme un champion.

Questions connexes