Resending following the "Mailing Guidelines". I am not sure whether this is
the right forum but figured I will try here first. 

Your help is much appreciated, 

-Jay

> -----Original Message-----
> From: Dhananjay Makwana [mailto:[EMAIL PROTECTED]
> Sent: Monday, July 24, 2006 5:46 PM
> To: [email protected]
> Cc: My Self
> Subject: axis2: accept/handle HTTPS (SSL) self-signed certificate
> 
> Hi,
> 
> I am writing a client to a web service that is running over HTTPS/SSL and
> is
> using self-signed certificate. I am using axis2 version 1.0 and am getting
> "sun.security.provider.certpath.SunCertPathBuilderException: unable to
> find
> valid certification path to requested target". The complete stack trace is
> below.
> 
> Now on commons httpclient site they mention that (from
> http://jakarta.apache.org/commons/httpclient/sslguide.html) :
> The default behaviour of HttpClient is suitable for most uses, however
> there
> are some aspects which you may want to configure. The most common
> requirements for customizing SSL are:
> 
>     * Ability to accept self-signed or untrusted SSL certificates. This is
> highlighted by an SSLException with the message Unrecognized SSL handshake
> (or similar) being thrown when a connection attempt is made.
>     * You want to use a third party SSL library instead of Sun's default
> implementation.
> 
> 
> 
> So, I am wondering as to whether there is any support in axis2 for doing
> this. I know there is a way to get the certificate and import it into
> local
> keystore/truststore using "keytool" tool from Sun but that is my last
> option.
> 
> Thanks in advance.
> 
> -Jay
> 
> Exception trace:
> 15:46:06,949 DEBUG [org.apache.commons.httpclient.HttpMethodDirector]
> org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMeth
> od
> Director.java:378) Attempt number 1 to process request
> 15:47:01,589 DEBUG [org.apache.commons.httpclient.HttpMethodDirector]
> org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMeth
> od
> Director.java:403) Closing the connection.
> 15:47:22,730 INFO  [org.apache.commons.httpclient.HttpMethodDirector]
> org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMeth
> od
> Director.java:438) I/O exception (org.apache.axis2.AxisFault) caught when
> processing request: sun.security.validator.ValidatorException: PKIX path
> building failed:
> sun.security.provider.certpath.SunCertPathBuilderException:
> unable to find valid certification path to requested target; nested
> exception is:
>       com.ctc.wstx.exc.WstxIOException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target
> 15:47:26,902 DEBUG [org.apache.commons.httpclient.HttpMethodDirector]
> org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMeth
> od
> Director.java:442) sun.security.validator.ValidatorException: PKIX path
> building failed:
> sun.security.provider.certpath.SunCertPathBuilderException:
> unable to find valid certification path to requested target; nested
> exception is:
>       com.ctc.wstx.exc.WstxIOException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target
> org.apache.axis2.AxisFault: sun.security.validator.ValidatorException:
> PKIX
> path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target; nested exception is:
>       com.ctc.wstx.exc.WstxIOException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target
>       at
> org.apache.axis2.transport.http.SOAPOverHTTPSender$AxisSOAPRequestEntity.w
> ri
> teRequest(SOAPOverHTTPSender.java:194)
>       at
> org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBo
> dy
> (EntityEnclosingMethod.java:495)
>       at
> org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.j
> av
> a:1973)
>       at
> org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:9
> 93
> )
>       at
> org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMeth
> od
> Director.java:397)
>       at
> org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodD
> ir
> ector.java:170)
>       at
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396
> )
>       at
> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346
> )
>       at
> org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractH
> TT
> PSender.java:530)
>       at
> org.apache.axis2.transport.http.SOAPOverHTTPSender.send(SOAPOverHTTPSender
> .j
> ava:92)
>       at
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWit
> hC
> ommons(CommonsHTTPTransportSender.java:299)
>       at
> org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsH
> TT
> PTransportSender.java:207)
>       at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:589)
>       at
> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperat
> io
> n.java:328)
>       at
> org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOpe
> ra
> tion.java:279)
>       at
> net.semandex.adaptor.seaweb.webservice.QPS_x0020_Influx_x0020_GatewayStub.
> Ge
> tTargetsInArea(QPS_x0020_Influx_x0020_GatewayStub.java:637)
>       at
> net.semandex.adaptor.seaweb.webservice.WebServiceTestCase.testGetTargetsIn
> Ar
> ea(WebServiceTestCase.java:203)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> 39
> )
>       at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm
> pl
> .java:25)
>       at java.lang.reflect.Method.invoke(Method.java:585)
>       at junit.framework.TestCase.runTest(TestCase.java:154)
>       at junit.framework.TestCase.runBare(TestCase.java:127)
>       at junit.framework.TestResult$1.protect(TestResult.java:106)
>       at junit.framework.TestResult.runProtected(TestResult.java:124)
>       at junit.framework.TestResult.run(TestResult.java:109)
>       at junit.framework.TestCase.run(TestCase.java:118)
>       at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTest
> Ru
> nner.java:478)
>       at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunne
> r.
> java:344)
>       at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunn
> er
> .java:196)
> Caused by: com.ctc.wstx.exc.WstxIOException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target
>       at
> com.ctc.wstx.sw.BaseStreamWriter.safeFlushStream(BaseStreamWriter.java:143
> 9)
>       at com.ctc.wstx.sw.BaseStreamWriter.flush(BaseStreamWriter.java:313)
>       at
> org.apache.axiom.om.impl.MTOMXMLStreamWriter.flush(MTOMXMLStreamWriter.jav
> a:
> 119)
>       at
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.ja
> va
> :382)
>       at
> org.apache.axis2.transport.http.SOAPOverHTTPSender$AxisSOAPRequestEntity.h
> an
> dleOMOutput(SOAPOverHTTPSender.java:145)
>       at
> org.apache.axis2.transport.http.SOAPOverHTTPSender$AxisSOAPRequestEntity.w
> ri
> teRequest(SOAPOverHTTPSender.java:180)
>       ... 29 more
> Caused by: 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
> com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150)
>       at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1476)
>       at
> com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:174)
>       at
> com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:168)
>       at
> com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHand
> sh
> aker.java:847)
>       at
> com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandsha
> ke
> r.java:106)
>       at
> com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
>       at
> com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433
> )
>       at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:8
> 15
> )
>       at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSock
> et
> Impl.java:1025)
>       at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:
> 61
> 9)
>       at
> com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59
> )
>       at
> java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
>       at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
>       at
> org.apache.commons.httpclient.ChunkedOutputStream.flush(ChunkedOutputStrea
> m.
> java:190)
>       at
> sun.nio.cs.StreamEncoder$CharsetSE.implFlush(StreamEncoder.java:410)
>       at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152)
>       at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213)
>       at java.io.BufferedWriter.flush(BufferedWriter.java:236)
>       at
> com.ctc.wstx.sw.BaseStreamWriter.flushStream(BaseStreamWriter.java:1430)
>       at
> com.ctc.wstx.sw.BaseStreamWriter.safeFlushStream(BaseStreamWriter.java:143
> 7)
>       ... 34 more
> 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(PKIXValidator.java:221)
>       at
> sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:145
> )
>       at sun.security.validator.Validator.validate(Validator.java:203)
>       at
> com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509T
> ru
> stManagerImpl.java:172)
>       at
> com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(SSLCo
> nt
> extImpl.java:320)
>       at
> com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHand
> sh
> aker.java:840)
>       ... 50 more
> Caused by: sun.security.provider.certpath.SunCertPathBuilderException:
> unable to find valid certification path to requested target
>       at
> sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathB
> ui
> lder.java:236)
>       at
> java.security.cert.CertPathBuilder.build(CertPathBuilder.java:194)
>       at
> sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:216)
>       ... 55 more
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to