Hi Asankha,
I've changed the HTTPS Transport sender and the following error message
disappeared: "PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find
valid certification path to requested target".
But now I'm receiving another one :o(:
"com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '"'
(code 34) in DOCTYPE declaration; expected a space between public and system
identifiers".
The only modification I've done, is changing the trustStore parameter of the
HTTPS Transport Sender in the webapp\WEB-INF\classes\conf\axis2.xml file.
Based on the stacktrace I'm not able to determine which document causes this
error. The modified axis2.xml file does not contain a DOCTYPE declaration.
Stacktrace:
2008-03-05 17:20:01,567 [192.168.13.175-INFOR2] [I/O dispatcher 3] ERROR
ClientHandler Received an unexpected response - of content type : text/html;
charset=iso-8859-1 and status code : 404 with reason : Not Found
2008-03-05 17:20:01,582 [192.168.13.175-INFOR2] [HttpClientWorker-1] ERROR
ClientWorker Unexpected response received
org.apache.axiom.om.OMException:
com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '"' (code
34) in DOCTYPE declaration; expected a space between public and system
identifiers
at [row,col {unknown-source}]: [1,50]
at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:239)
at
org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:161)
at
org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:110)
at
org.apache.axis2.builder.BuilderUtil.getSOAPBuilder(BuilderUtil.java:609)
at
org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:178)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:111)
at
org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:160)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
PS: I'm using ESB v1.6.
Regards, Stefan Lecho.
asankha wrote:
>
> Hi Stefan
>> In order to setup an SSL connection with the Axis2-based client, we've
>> added
>> the following: "System.setProperty("javax.net.ssl.trustStore",
>> "d:/path_to_file/name_of_keystore");
>> System.setProperty("javax.net.ssl.trustStorePassword", "secret");".
>>
>> In ESB, I've changed the value of the "truststore" parameter to use the
>> same
>> truststore used by the Axis2-based client. I've also created a Proxy that
>> points to the https webservice. When calling this Proxy, the following
>> error
>> is generated: "Caused by: sun.security.validator.ValidatorException: PKIX
>> path building failed:
>> sun.security.provider.certpath.SunCertPathBuilderException: unable to
>> find
>> valid certification path to requested target". The used truststore
>> contains
>> the SSL certificate of the site.
>>
> Which "truststore" parameter did you change? Since you are "calling" and
> external HTTPS service, you must edit the HTTPS Transport Sender
> configuration as follows, and not the Listener
>
> <transportSender name="https"
> class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLSender">
> <parameter name="non-blocking" locked="false">true</parameter>
> <parameter name="keystore" locked="false">
> <KeyStore>
> <Location>identity.jks</Location>
> <Type>JKS</Type>
> <Password>password</Password>
> <KeyPassword>password</KeyPassword>
> </KeyStore>
> </parameter>
> *<parameter name="truststore" locked="false">
> <TrustStore>
> <Location>trust.jks</Location>
> <Type>JKS</Type>
> <Password>password</Password>
> </TrustStore>
> </parameter>*
> <!--<parameter
> name="HostnameVerifier">DefaultAndLocalhost</parameter>
> supports Strict|AllowAll|DefaultAndLocalhost or the default
> if none specified -->
> </transportSender>
>
>> I'm aware that this question is more related to JKS and SSL
>> configuration,
>> but - although I found it out for the Axis2-based client - I'm unable to
>> configure it correctly for ESB.
>>
> I am confident that this works without any issues if the keystores are
> properly configured. Basically I would expect the truststore to contain
> the CA certificate of your external server as a "trusted certificate" in
> the keystore
>
> If you can also send me the output of "keytool -v -list -keystore
> trust.jks" for your JKS, that would be helpful (please remember to hide
> your password from the output generated before you post it here :-))
>
> asankha
>
> _______________________________________________
> Esb-java-user mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/esb-java-user
>
>
--
View this message in context:
http://www.nabble.com/HTTPS-connection-tp15613822p15854285.html
Sent from the WSO2 ESB Users mailing list archive at Nabble.com.
_______________________________________________
Esb-java-user mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-user