2015-06-18 6 views
2

Я хочу создать java-клиент из wsdl.Ошибка при попытке создания клиента из wsdl

Так что я создал новый проект, импортировал wsdl в проект, а затем щелкнул правой кнопкой мыши -> веб-службы -> Generate Client.

Так что это вариант, который я использую:

enter image description here

Затем нажмите на рыбу и у меня есть эта ошибка:

IWAB0399E Error in generating Java from WSDL: WSDLException (at /definitions/types/xsd:schema): faultCode=OTHER_ERROR: An error occurred trying to resolve schema referenced at 'https://edottotest.sanita.regione.rsr.rupar.puglia.it/nsisr/PianoAssistenzialeResidenzialeService?xsd=1', relative to 'file:/D:/Dropbox/workspace/Edotto/src/PianoAssistenzialeResidenzialeService.wsdl'.: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 
    at sun.security.ssl.Alerts.getSSLException(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source) 
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source) 
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source) 
    at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) 
    at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) 
    at sun.security.ssl.Handshaker.processLoop(Unknown Source) 
    at sun.security.ssl.Handshaker.process_record(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) 
    at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) 
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) 
    at java.net.URLConnection.getContent(Unknown Source) 
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getContent(Unknown Source) 
    at java.net.URL.getContent(Unknown Source) 
    at com.ibm.wsdl.util.StringUtils.getContentAsInputStream(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseTypes(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) 
    at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:516) 
    at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:495) 
    at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:361) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 
    at sun.security.validator.PKIXValidator.doBuild(Unknown Source) 
    at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) 
    at sun.security.validator.Validator.validate(Unknown Source) 
    at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) 
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Sour 

ответ

1

Ваш WSDL импортирует схему с URL с https адресная схема. Эта ошибка указывает, что ваша установка Java не «доверяет» сертификату, представленному сервером, на котором размещается эта импортируемая схема.

У вас есть несколько вариантов:

  1. Импорта либо сертификат ЦСА сервера или сервера фактического сертификата в ваше хранилище доверенного
  2. Скачать схему локального расположения и изменение импорта URL в WSDL

Я бы порекомендовал второй вариант, так как он немного портативен, если вы вместе упаковываете WSDL и вышеупомянутую схему.

+0

У меня есть проблема, спасибо. – bircastri

0

Я хотел бы предложить вам попробовать пример, используя приведенную ниже WSDL-файл http://www.webservicex.com/globalweather.asmx?WSDL

для создания клиента.

И убедитесь, что вы запустили сервер. Если это работает нормально. Тогда ваша проблема будет решена.

Смежные вопросы