2009-11-16 3 views
0

Я пытаюсь использовать JAX-WS генерироваться классами (созданная с помощью wsimport) для вызову WebService подключения по протоколу HTTPS из внутри компонента Java в сервере приложений Sybase EAServer 5.3. Я получаю исключение в журнале EAServer с следующим в качестве причины (я удалил URL-адрес веб-службы ).Подключения к WebService через HTTPS броски SCL Профиль ошибку 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 

Я уверен, что это потому, что мне нужно настроить EAServer принять на SSL сертификат этого сайта. Сам код подключения - , все созданные Jax-WS, поэтому я фактически не создаю соединение . Это происходит в сгенерированных классах.

Любые идеи, как правильно настроить EAServer так что com.sybase.jaguar.net.HttpsURLConnection.getInputStream будет успешно создать соединение HTTPS для конечной точки WebService?

ответ

0

Я работал с поддержкой Sybase, чтобы решить эту проблему. Он включал обновление EAServer для использования поставщика безопасности Sun вместо Sybase. В Jaguar.props мы обновили параметры виртуальной машины Java, чтобы быть:

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

Это позволяет ему использовать поставщик безопасности Sun, и я перестал получать сообщение SCL profile allocation.

После этого я начал получать NullPointerExceptions из классов JAX-WS в журнале (который я подтвердил был связан с настройкой JAX-WS для использования в EAServer, ничего не делать с SSL Webservice).

мне пришлось добавить свою сгенерированный вебсервис окурки банки (который я создал с помощью wsimport) в собственность Jaguar.props com.sybase.jaguar.server.java.classes

Я также добавил эти сгенерированные окурки баночки и библиотеки времени выполнения JAX-WS к 2 Jaguar.props свойства com.sybase.jaguar.server.jvm.bootclasspath.jars и com.sybase.jaguar.server.jvm.classpath.jars

Затем я скопировал библиотеки времени выполнения JAX-WS и мой сгенерированный вебсервис окурки баночку в каталог C:\Sybase\EAServer\java\lib и все начал работать как чемпион.