- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 CXF 生成的代码通过 SSL 和公司代理连接到远程 Web 服务。当通过 Java API 建立连接并且所有 SSL 设置都设置为系统属性时,代码工作正常。
System.setProperties("https.proxyHost", "myproxy.com");
System.setProperties("https.proxyPort", "8001");
System.setProperties("javax.net.ssl.keyStoreType", "pkcs12");
System.setProperties("javax.net.ssl.keyStore", "C:/keystore.p12");
System.setProperties("javax.net.ssl.keyStorePassword", "keypassword");
System.setProperties("javax.net.ssl.trustStore", "C:/cacerts");
System.setProperties("javax.net.ssl.trustStorePassword", "capassword");
MyWebService_Service ss = new MyWebService_Service(wsdlUrl, SERVICE_NAME);
MyWebService service = ss.getMyWebServicePort();
使用这段代码,我现在可以调用服务方法,一切都按预期进行。当我尝试使用 Spring 设置相同的配置时,我的问题出现了,这是我们的首选方法,因为我们已经广泛使用 Spring。
我的 Spring 配置:
<!-- relevant snippet from spring context -->
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-http.xml" />
<jaxws:client id="webservice" serviceName="myns:MyWebService" endpointName="myns:MyWebServicePort"
address="https://bigserver.com:5012/blah/TheWebService"
serviceClass="com.mycomp.MyWebService" />
<http:conduit name="{myns}MyWebServicePort.http-conduit">
<http:tlsClientParamenters disableCNCheck="true" secureSocketProtocol="TLS">
<sec:trustManagers>
<sec:keyStore type="JKS" password="capassword" file="c:/cacerts" />
</sec:trustmanagers>
<sec:keyManagers>
<sec:keyStore type="pkcs12" password="keypassword" file="c:/keystore.p12" />
</sec:keyManagers>
</http:tlsClientParamenters>
<http:client ProxyServer="myproxy.com" ProxyServerPort="8001" />
</http:conduit>
在这两种情况下,Web 服务客户端都部署在 Web 应用程序中。在第二种情况下,访问 Web 服务会导致
javax.net.ssl.SSLHandshakeException: Received fatal alert: bad_certificate
编辑:我使用的是 CXF 2.2 版。
最佳答案
您是否尝试过将下一个属性添加到您的客户端参数?
**useHttpsURLConnectionDefaultHostnameVerifier="false"**
看起来像这样:
关于java - 为什么在使用 spring 和 CXF 时会出现 bad_certificate 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3981610/
我将 key 和证书(组合)放入一个 cert.pem 文件中,我得到,“异常”:“javax.net.ssl.SSLHandshakeException”,"message": "收到致命警报:ba
我正在尝试与服务器建立 SSL 连接。我已经创建了一个 Truststore 并将服务器的证书以及我的证书作为受信任的条目导入到 Keystore 中。服务器人员还将我的证书导入到他们的 keysto
我正在尝试设置 SSL 套接字连接(并在客户端上执行以下操作) 我生成证书签名请求以获取签名的客户端证书 现在我有私钥(在 CSR 期间使用)、签名的客户端证书和根证书(带外获得)。 我将私钥和签名的
我已经在本地创建了两台服务器,并且我将对它们的通信应用相互身份验证。 我只是不知道问题是什么。我对这种机制缺乏了解,但我对服务器本身也缺乏了解。 创建每个 keystore keytool -genk
我正在尝试使用在 jboss 上运行的客户端连接到 EJBCA 服务器。如果我的客户端是一个独立的 java 应用程序,它运行正常,但是当客户端是一个 Rest web 服务时,我有这个错误:
我正在使用 CXF 生成的代码通过 SSL 和公司代理连接到远程 Web 服务。当通过 Java API 建立连接并且所有 SSL 设置都设置为系统属性时,代码工作正常。 System.setProp
我正在使用自签名证书来进行客户端身份验证。我将我的服务器配置为仅在客户端包含客户端 keystore 的情况下才接受连接。 这在 soapUI 工具中运行良好。但是当我尝试在我的代码中实现它时它抛出
我在使用改造、okhttp-tls 和 Spring Boot 的 mTLS 方面遇到了一些问题。如果 server.ssl.client-auth 未设置为 need,通信工作正常,因此服务器身份验
我正在使用 Gadling 3.0.0 作为 SBT 中的插件,我正在按照配置标题下的 https://gatling.io/docs/current/http/recorder/#recorder
我有一个需要从 REST API 获取实例的 jar。我已经完成了 SSL 证书设置并生成了私钥和公钥作为 JKS。我已将我的证书导入到 Java\jdk1.8.0_201\jre\lib\secur
我需要使用自签名(或未签名)证书作为我的流程之一的入站端点的 HTTPS 监听器的证书。我尝试了几种方法来生成证书,但是当监听器尝试读取请求时,我总是得到一个错误: javax.net.ssl.SSL
有人能告诉我这里到底发生了什么吗?。我正在尝试与服务器建立 SSL 连接。使用 Djavax.ne.debug 命令运行我的应用程序后,我明白了。 C:\Inetpub\asp\AbujaElectr
尝试访问 WSDL 端点时出现以下错误。 首先,我使用 cliengen ant 任务创建了客户端 jar,然后创建了一个简单的 java 类来测试 wsdl 端点,但出现了以下错误 - javax.
我正在尝试在 api 和应用程序之间设置 ssl。当我从我的应用程序调用 api 时遇到问题,我收到如下错误: SEVERE: Servlet.service() for servlet [sprin
我正在执行下面的 cURL 命令,我从服务器得到了正确的响应: curl -k --cert ./xevias.com.crt --key ./xevias.com.key --pass USSEQ
我们的 Java Swing + Visual Basic APP 让用户可以通过 SSL 连接对服务器进行身份验证。现在在同一个实体客户端共享一张智能卡的两个用户突然遇到一个问题:用Java部分无法
我正在尝试向需要证书的服务发出 https 发布请求。我收到了在 SOAPUI 和 Postman 中工作的相同请求。我还能够使用 restTemplate 获得其他不需要证书的 POST 请求以在
我正在使用自签名证书进行 SSL 双向身份验证。我为 client(client-keystore.jks) 和 server(server-keystore.jks) 创建了两个 keystore
我是一名优秀的程序员,十分优秀!