java - 使用 Axis 客户端忽略无效证书

标签 java soap axis

我正在为由供应商控制的 SOAP 网络服务构建客户端。不幸的是,他们的开发服务器有一个我无法验证的不安全(自签名)证书。每次我尝试发出请求时,Apache Axis 都会失败。有没有办法忽略 SSL 验证错误?我显然不想在生产环境中这样做,但它在我的开发环境中会很好。

最佳答案

尝试禁用证书验证,在发出请求调用之前输入以下代码 -

    // Create a trust manager that does not validate certificate chains
    final TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {
            @Override
            public java.security.cert.X509Certificate[] getAcceptedIssuers() {
                return null;
            }

            @Override
            public void checkClientTrusted(X509Certificate[] certs, String authType) {
            }

            @Override
            public void checkServerTrusted(X509Certificate[] certs, String authType) {
            }
        }
    };

    // Install the all-trusting trust manager
    try {
        SSLContext sc = SSLContext.getInstance("SSL");
        sc.init(null, trustAllCerts, null);
        HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
    } catch (Exception ex) {
        // take action
    }

关于java - 使用 Axis 客户端忽略无效证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15016734/

相关文章:

matlab - 为什么我的 Z 限制没有设置,即使我指定了它?

java - 放置自动生成代码的好地方?

java - RestAssured 和属性的 GPath 表达式不一致

python - 如何防止 suds 通过网络获取 xml.xsd?

python - Axis 类 - 以给定单位明确设置 Axis 的大小(宽度/高度)

java - Android 使用 SOAP 时无法序列化 : org. ksoap2.serialization.SoapSerializationEnvelope

java - 用于响应的 JAX-WS 和 SOAP 映射

java - 将数据点添加到系列时,未经检查的数据调用错误

java - 将文件添加到类路径

java - 如何从富文本压缩和调整图像大小