[英]From wsdl to client java web service(Server has self signed certificate)
我需要创建Web服务客户端,该服务的公司向我们发送了wsdl文件。 我有wsdl文件,用户名和密码,服务url和txt文件,它们带有一些键,例如“ 20 a9 38 4e 82 3a 94 d1 ...”。 服务器具有自签名证书,我尝试通过InstallCert.java来获取证书,使用keytool生成密钥库等。当我使用axis2 wsdl2java从wsdl生成客户端时,它将生成客户端,但在生成过程结束时会给出端口443错误。 当我通过Eclipse中的Web Service资源管理器测试服务时,我正在获取javax.net.ssl.SSLHandshakeException sun.security.validator.ValidatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到有效的认证路径要求的目标错误。 我也检查了此错误,但找不到解决方案。
谁能告诉我如何用JDK 1.6在Eclipse apache tomcat中生成客户端,普通客户端之间有什么区别?
首先,URL端点应为httpS而不是http ,并使您的truststore / keystore可用于JVM。
参见: http : //blog.technogemsinc.com/2008/02/https-connection-in-java.html
大约一年前,我还使用了https://code.google.com/p/misc-utils/wiki/JavaHttpsUrl 。
使用以下两个选项为您提供更方便的服务
使信任库可用于jvm
-Djavax.net.ssl.trustStore =“ <%PATH_TO_TRUST_STORE%> \\ testkeys”
告诉您的Java / socket工厂使用此“信任库”:
System.setProperty(“ javax.net.ssl.trustStore”,“ keystore_file”);
System.setProperty(“ javax.net.ssl.trustStorePassword”,“ somepass”);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.