[ https://issues.apache.org/jira/browse/CXF-2354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12747368#action_12747368 ]
Benson Margulies commented on CXF-2354: --------------------------------------- The problem is : 'https://g4w0203.americas.hpqcorp.net/HPISWeb/ISASCustomerWebService/CustomerService.svc?wsdl=wsdl0'.: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative DNS name matching g4w0203.americas.hpqcorp.net found. I strongly recommend downloading to the file system and running wsdl2java from there. If that won't work, we'll need someone with a lot more SSL knowledge than myself. > WSDLException thrown for NO Subject alternative DNS name matching when the > server names do actually match > --------------------------------------------------------------------------------------------------------- > > Key: CXF-2354 > URL: https://issues.apache.org/jira/browse/CXF-2354 > Project: CXF > Issue Type: Bug > Components: Tooling > Affects Versions: 2.2.2 > Environment: Ubuntu 8.10 32bit OS, Java 1.6.10, CXF 2.2.2, Ant 1.7.1 > Reporter: Conor Buescher > > I am working on building a java based web services client for an already > deployed .Net based web service built using WCF. I am unable to run > wsdl2java on the remote wsdl and have downloaded all of the associated wsdl > files to my machine and I can then run wsdl2java using the following ant > build.xml file: > <?xml version="1.0"?> > <project name="cxf wsdl2java" default="cxfWSDL2Java" basedir="."> > <property name="cxf.home" location > ="/home/conorb/devTools/apache-cxf-2.2.2"/> > > <path id="cxf.classpath"> > <fileset dir="${cxf.home}/lib"> > <include name="*.jar"/> > <include name="*.xml"/> > </fileset> > </path> > > <target name="cxfWSDL2Java"> > <java classname="org.apache.cxf.tools.wsdlto.WSDLToJava" fork="true"> > <arg value="-ant"/> > <arg value="-client"/> > <arg value="-verbose"/> > <arg value="-sn"/> > <arg value="CustomerService"/> > <arg value="-d"/> > <arg value="ispe-client"/> > <arg value="/home/conorb/Documents/groovy/CustomerService.wsdl"/> > <classpath> > <path refid="cxf.classpath"/> > </classpath> > </java> > </target> > </project> > Once that works I can edit the created files to point to the wsdl url, the > external url is here: > https://g4w0209.americas.hpqcorp.net/HPISWeb/ISASCustomerWebService/CustomerService.svc?wsdl > - and then make changes to the client class for testing the service. > Additionally I download the SSL certificate into my java keystore using the > following command: sudo keytool -import -trustcacerts -keystore > /usr/lib/jvm/java-6-sun-1.6.0.10/jre/lib/security/cacerts -storepass changeit > -alias g4w0217 -file /home/conorb/Documents/groovy/g4w0217.cert.pem > When I run ant ICustomerServiceClient on my modified java code I receive the > following error: > con...@conorb-desktop:~/Documents/groovy/ispe-client$ ant > ICustomerServiceClient > Buildfile: build.xml > compile: > ICustomerServiceClient: > [java] Exception in thread "main" javax.xml.ws.WebServiceException: > org.apache.cxf.service.factory.ServiceConstructionException: Failed to create > service. > [java] at org.apache.cxf.jaxws.ServiceImpl.<init>(ServiceImpl.java:149) > [java] at > org.apache.cxf.jaxws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:65) > [java] at javax.xml.ws.Service.<init>(Service.java:56) > [java] at org.tempuri.CustomerService.<init>(CustomerService.java:49) > [java] at > com.hp.hpis.customerservice._2009._02.ICustomerService_BasicHttpBindingICustomerService_Client.main(ICustomerService_BasicHttpBindingICustomerService_Client.java:55) > [java] Caused by: > org.apache.cxf.service.factory.ServiceConstructionException: Failed to create > service. > [java] at > org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:93) > [java] at > org.apache.cxf.jaxws.ServiceImpl.initializePorts(ServiceImpl.java:204) > [java] at org.apache.cxf.jaxws.ServiceImpl.<init>(ServiceImpl.java:147) > [java] ... 4 more > [java] Caused by: javax.wsdl.WSDLException: WSDLException (at > /wsdl:definitions/wsdl:import): faultCode=PARSER_ERROR: Problem parsing > 'https://g4w0203.americas.hpqcorp.net/HPISWeb/ISASCustomerWebService/CustomerService.svc?wsdl=wsdl0'.: > javax.net.ssl.SSLHandshakeException: > java.security.cert.CertificateException: No subject alternative DNS name > matching g4w0203.americas.hpqcorp.net found. > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(Unknown Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.parseImport(Unknown Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown > Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) > [java] at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) > [java] at > org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:210) > [java] at > org.apache.cxf.wsdl11.WSDLManagerImpl.getDefinition(WSDLManagerImpl.java:175) > [java] at > org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:91) > [java] ... 6 more > [java] Caused by: javax.net.ssl.SSLHandshakeException: > java.security.cert.CertificateException: No subject alternative DNS name > matching g4w0203.americas.hpqcorp.net found. > [java] at > com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174) > [java] at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1591) > [java] at > com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:187) > [java] at > com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:181) > [java] at > com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1035) > [java] at > com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:124) > [java] at > com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:516) > [java] at > com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:454) > [java] at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:884) > [java] at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1096) > [java] at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1123) > [java] at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1107) > [java] at > sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:415) > [java] at > sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166) > [java] at > sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1026) > [java] at > sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:234) > [java] at > com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:677) > [java] at > com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:186) > [java] at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771) > [java] at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) > [java] at > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) > [java] at > com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225) > [java] at > com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283) > [java] ... 17 more > [java] Caused by: java.security.cert.CertificateException: No subject > alternative DNS name matching g4w0203.americas.hpqcorp.net found. > [java] at > sun.security.util.HostnameChecker.matchDNS(HostnameChecker.java:193) > [java] at > sun.security.util.HostnameChecker.match(HostnameChecker.java:77) > [java] at > com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:264) > [java] at > com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:250) > [java] at > com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1014) > [java] ... 35 more > [java] Java Result: 1 > BUILD SUCCESSFUL > Total time: 4 seconds > con...@conorb-desktop:~/Documents/groovy/ispe-client$ > Thanks, > conorb -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.