So everything in my CXF application works perfectly... until I attempt
to enable SSL. I'm using the method outlined in the wsdl_first_https
example. As soon as I add the code to enbale HTTPS to my xml configs,
the client errors out with the exception below which boils down to no
valid cert available. I've even tried running the app using the certs
from the example which runs correctly and still no dice. My xml is
identical to the example except for my http:conduit name (which I know
is correct as things work when the ssl declarations are commented
out). I'm at a loss as to what to try next, so any help would be
appreciated.
INFO: Interceptor has thrown exception, unwinding now Could not send
Message.
Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Could
not send Message.
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:
145)
at $Proxy40.getSessionTagByIP(Unknown Source)
at
net
.node777
.testapp
.webservice
.TestWebService_TestWebService_ClientTest
.main(TestWebService_TestWebService_ClientTest.java:103)
Caused by: org.apache.cxf.interceptor.Fault: Could not send Message.
at org.apache.cxf.interceptor.MessageSenderInterceptor
$
MessageSenderEndingInterceptor
.handleMessage(MessageSenderInterceptor.java:64)
at
org
.apache
.cxf
.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:226)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:469)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:299)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:251)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:
124)
... 2 more
Caused by: javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: No trusted certificate found
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(Unknown Source)
at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Unknown Source)
at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Unknown Source)
at
com
.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(Unknown
Source)
at
com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Unknown
Source)
at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown Source)
at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Unknown
Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown
Source)
at
com
.sun
.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown
Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown
Source)
at com.sun.net.ssl.internal.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.getOutputStream(Unknown
Source)
at
sun
.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown
Source)
at org.apache.cxf.transport.http.HTTPConduit
$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1874)
at org.apache.cxf.transport.http.HTTPConduit
$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1832)
at
org
.apache
.cxf
.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:
42)
at
org
.apache
.cxf
.io
.AbstractThresholdOutputStream
.write(AbstractThresholdOutputStream.java:69)
at org.apache.cxf.transport.http.HTTPConduit
$WrappedOutputStream.close(HTTPConduit.java:1892)
at
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:
600)
at org.apache.cxf.interceptor.MessageSenderInterceptor
$
MessageSenderEndingInterceptor
.handleMessage(MessageSenderInterceptor.java:62)
... 8 more
Caused by: sun.security.validator.ValidatorException: No trusted
certificate found
at sun.security.validator.SimpleValidator.buildTrustedChain(Unknown
Source)
at sun.security.validator.SimpleValidator.engineValidate(Unknown
Source)
at sun.security.validator.Validator.validate(Unknown Source)
at
com
.sun
.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown
Source)
at
com
.sun
.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(Unknown
Source)
... 28 more
Thanks
-----------------------------------------------------------
- stephen.g.walizer - http://node777.net - [email protected]
-----------------------------------------------------------