我想使用 wsdl2java 实用程序创建一个 Web 服务客户端。我必须通过 SSL 连接到此服务器
这个 wsdl 看起来像这样:
https://xxx.xx.xx.xx:8443/api/wsdl/xxxxxxx.wsdl
我使用以下方法生成了证书:
openssl s_client -connect xxx.xx.xx.x:8443 </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > abcCertificate.pem
并使用以下命令将其添加到密钥库:
keytool -import -noprompt -trustcacerts -alias testcert -file abcCertificate.pem -keystore /usr/java/jdk1.7.0_06/jre/lib/security/cacerts -ext san=ip:xxx.xx.xx.xx
当我尝试使用wsdl2java
创建Web 服务客户端时,它会抛出异常:
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative names present
我使用 此链接中的这些信息。