java - 通过 HTTPS 的简单 Java Web 服务客户端

标签 java xml web-services https

我正在通过 HTTPS Web 服务连接到简单的 XML,并收到安全异常。我的问题是,您是否认为造成这种情况的原因是网络服务器上的证书,所以我应该与服务器管理员交谈,或者我的客户端代码是否应该处理这个问题。我很想听听是否有人遇到并解决了这个问题。解决方案是在客户端还是服务器端找到?以下是异常(exception)情况。

Caused by: sun.security.validator.ValidatorException: Violated path length constraints
at sun.security.validator.SimpleValidator.checkBasicConstraints(SimpleValidator.java:243)
at sun.security.validator.SimpleValidator.checkExtensions(SimpleValidator.java:158)
at sun.security.validator.SimpleValidator.engineValidate(SimpleValidator.java:143)
at sun.security.validator.Validator.validate(Validator.java:202)
at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(DashoA12275)
at com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(DashoA12275)

感谢您的建议。

最佳答案

可能值得首先使用 openssl 测试客户端

openssl s_client -connect yourserver.com:443

查看手册页以获取更多选项。

当您使用网络浏览器访问它时会发生什么? Firefox 应该为您提供相当多有关服务器证书的信息。

虽然客户端证书认证后看起来不像你 this examples确实向您展示了如何使用自定义 SSLSocketFactory。如果您无权访问连接,也可以静态设置它。

关于java - 通过 HTTPS 的简单 Java Web 服务客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/567525/

相关文章:

java - 在 Eclipse 上安装 Apache 包

c++ - 使用 Boost 将数据存储到 xml 线程安全的智能解决方案

jquery - 如何在 jQuery 中对 xml 数据进行排序

java - Tcl 中的 System.currenttimemillis() 相当于什么

java - 使用每边不同的值初始化 2D Java 数组

java - 从本地测试环境到现场站点

asp.net - jQuery Ajax 调用 - 成功时设置变量值

c - 如何使用 ANSI C 使用在 IIS 上运行的 Web 服务?

java - Android应用架构: how to share behavior between all screens

java - NamedNodeMap 的通用 foreach 迭代