对于通过Axis client访问WS时,如果协议为https则需要进行证书认证。
目前有两种方式可以进行访问
1、根据服务证书成功客户端证书,然后在调用WS前写入证书以便java能进行校验。
System.setProperty("javax.net.ssl.trustStore",
"d:\\SSL\\client.truststore");
System.setProperty("javax.net.ssl.trustStorePassword", "client");
对于SSLEnableProtocol只配置了TSLv1.2的还需加上
SSLContext sslContext = SSLContext.getInstance("TLSv1.2");
sslContext.init(null, null, null);
SSLContext.setDefault(sslContext);
2、跳过证书认证。
对于只启用TSLv1.2的仍需进行证书认证。
AxisProperties.setProperty("axis.socketSecureFactory", "org.apache.axis.components.net.SunFakeTrustSocketFactory");
将原来的factotry改为忽略认证的factory。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。