【问题标题】:javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure only in serverjavax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure 仅在服务器中
【发布时间】:2018-09-28 18:27:43
【问题描述】:

我正在尝试在 Oracle Sql Developer 中从 Java 发出 HTTP GET 请求。

在我的电脑上一切正常。

唯一不起作用的是当我访问 https 子域时,它会给出 SSLHandshakeException 错误(例如,如果我访问 https://www.example.com 它可以工作,但如果我访问 https://subdomain.example.com 它会失败)

我当时所做的是将证书添加到 Java 缓存中,然后它就起作用了。

但是,当我在服务器上执行此操作时,使用 PL / SQL 调用 Java 函数从 SQL Developer 执行此操作,它失败了,我对证书做了同样的事情。

我不知道你是否在 sql developer 的 Java 中引用 cacerts,因为在我的机器上如果我必须引用这个 (-Djavax.net.ssl.keyStore = C:\Oracle\Middleware\Oracle_Home \oracle_common\jdk\jre\lib\security\cacerts)

如果我在 Java 代码中这样做,这会一直报错:

System.setProperty ("javax.net.ssl.trustStore", "/path/jdk/jdk6/lib/security/cacerts.jks");

我怎么知道它是否正在获取证书?

我的机器:Java 1.7 和 1.8 有效 服务器:Java 1.6 不工作

问候和感谢

【问题讨论】:

  • 我在尝试使用 jdk1.4 访问 https 时遇到了类似的问题。这个 jdk 版本不支持 https 调用,所以我不得不升级 jdk 版本。也许你有一个类似的问题。看看这个文档blogs.oracle.com/java-platform-group/…

标签: java oracle ssl sslhandshakeexception


【解决方案1】:

这是Java 6的问题,所以在Java 7和Java 8中都能完美运行。

【讨论】:

    猜你喜欢
    • 2015-12-04
    • 2016-07-22
    • 2017-01-20
    • 2016-11-07
    • 2016-10-07
    • 1970-01-01
    • 2019-10-05
    相关资源
    最近更新 更多