【发布时间】:2020-05-06 18:37:54
【问题描述】:
我正在使用调用 Oracle Database 11g 企业版 11.2.0.4.0 版中的 java 类的 pl/sql 过程。 java 类应该调用一个 web 服务,但是它只支持 TLS 1.1 和 1.2。 我检查了Java版本如下:
create or replace function test_get_java_property (prop in varchar2) return varchar2 is language java name 'java.lang.System.getProperty (java.lang.String) return java.lang.String';
SELECT dbms_java.get_ojvm_property (PROPSTRING => 'java.version') FROM dual;
查询的结果是“1.6.0_43”,如果我从路径“E:\oracle\product\11.2\dbhome_1\jdk\bin”输入“java –version”,我会得到:
Java version "1.5.0_51"
Java (TM) 2 Runtime Environment, Standard Edition (build 1.5.0_51-b10)
Java HotSpot (TM) 64-Bit Server VM (build 1.5.0_51-b10, mixed mode)
所以 Java 版本不支持 TLS 1.1 或 1.2。因此,必须启用 TLS 1.1 或 1.2。 如果可能的话,也许有必要更新数据库中的 java 版本。 如果是这样,我应该如何进行? 我无法更新 Oracle 版本。 我很欣赏任何其他类型的解决方案。
【问题讨论】:
-
Oracle 直到 12.1 才提供升级嵌入式 JVM 的方法,所以你不走运。我会推荐一个代理。 support.oracle.com/knowledge/Oracle%20Database%20Products/…