我创建了一个Apache Axis 1.3客户端来调用支付网关服务并将其安装在hybris yempty扩展上。现在支付网关支持TLS 1.2协议进行通信哪个可用于java 8.但是我使用的是仅支持java 7的Hybris 5.3。所以我通过设置Axisproperties将我的客户端配置为使用TLS 1.3。
AxisProperties.setProperty(“org.apache.axis.components.net.SecureSocketFactory”,TrustAllSSLSocketFactory.class.getName());
TrustAllSSLSocketFactory .java是我的Java类,它将SSLContext设置为TLS 1.2。
此解决方案适用于独立的Java 7和Tomcat 7.但不适用于Hybris 5.3的Hybris服务器。
请提供一些解决方案。
答案 0 :(得分:0)
我找到了这个问题的解决方法。由于在后台运行的hybris taskexecutor重新安置了AxisProperties,Axis与hybris的效果不佳。使用wsimport工具创建Soap Client并将-Dhttps.protocols = TLSv1.2传递给tomcat wrapper.conf。 我还将系统属性设置为TLS 1.2。 System.setProperty(" https.protocols"," TLSv1.2");现在TLS 1.2谈判运作良好。