gpt4 book ai didi

java - 从 wsdl 到客户端 java web 服务(服务器有自签名证书)

转载 作者:太空宇宙 更新时间:2023-11-03 15:00:34 26 4
gpt4 key购买 nike

我需要创建网络服务客户端,提供服务的公司向我们发送 wsdl 文件。我有 wsdl 文件、用户名和密码、服务 url 和 txt 文件,其中包含一些键,如“20 a9 38 4e 82 3a 94 d1 ...”。服务器具有自签名证书,我尝试通过 InstallCert.java 获取证书,使用 keytool 生成 keystore 等。当我使用 axis2 wsdl2java 从 wsdl 生成客户端时,它会生成客户端,但在生成过程结束时会出现端口 443 错误。当我在 eclipse 中通过 Web 服务资源管理器测试服务时,我得到了 javax.net.ssl.SSLHandshakeExceptionsun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 错误。我也检查了这个错误,但我找不到解决方案。

谁能告诉我我应该如何在带有 jdk 1.6 的 eclipse apache tomcat 中生成客户端,普通客户端有什么区别。

最佳答案

首先,URL端点应该是httpS而不是http并使您的信任库/ keystore 可用于 JVM。

参见:http://blog.technogemsinc.com/2008/02/https-connection-in-java.html

我也用过https://code.google.com/p/misc-utils/wiki/JavaHttpsUrl大约一年前..

从以下两个选项中使用对您来说更方便的选项

  1. 让 truststore 对 jvm 可用

    -Djavax.net.ssl.trustStore="<%PATH_TO_TRUST_STORE%>\testkeys"

  2. 告诉您的 Java/套接字工厂使用这个“信任库”:

    System.setProperty( "javax.net.ssl.trustStore", "keystore_file");

    System.setProperty( "javax.net.ssl.trustStorePassword", "somepass");

关于java - 从 wsdl 到客户端 java web 服务(服务器有自签名证书),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22655661/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com