使用Spring-WS的客户端SSL

时间:2014-06-23 14:59:33

标签: ssl spring-ws

我正在尝试使用相互身份验证(客户端和服务器上的证书),但我收到此错误:     javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到所请求目标的有效证书路径

然后我找到了我尝试用作messageSender的这个类: HttpsUrlConnectionMessageSender

但我无法弄清楚如何设置我使用javax.net.ssl属性配置的密钥库和信任库。 如果可能的话,我想在spring xml文件中进行此设置,以便动态配置。

1 个答案:

答案 0 :(得分:0)

结帐此处。

您只需生成证书并放置在JRE库路径中,无需使用任何邮件发件人。

http://www.mkyong.com/webservices/jax-ws/suncertpathbuilderexception-unable-to-find-valid-certification-path-to-requested-target/

证书生成器https://code.google.com/p/java-use-examples/source/browse/trunk/src/com/aw/ad/util/InstallCert.java

然后,如果您遇到此异常java.security.cert.CertificateException

然后只需覆盖验证者 static { HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() { public boolean verify(String hostname, SSLSession session) { // HOST_ADDRESS = Endpoint host address if (hostname.equals(HOST_ADDRESS)) return true; return false; } }); }