Невозможно загрузить банку, используя dbms_ java .load java in Oracle - PullRequest
0 голосов
/ 06 февраля 2020

Мне нужно загрузить файл jar в Oracle СУБД, используя метод dbms_java.loadjava. Я предоставил все необходимые разрешения и смог успешно выполнить приведенную ниже функцию.

create or replace function get_java_property(prop in varchar2)
return varchar2 is
language java name 'java.lang.System.getProperty(java.lang.String) return java.lang.String';

select get_java_property('java.version') from dual;

1.8.0_231

Однако мне также необходимо загрузить внешний jar-файл и использовать его. Я успешно могу сделать то же самое, поместив jar на Oracle Сервер и выполнив команду loadjava. Однако я хочу сделать то же самое, используя dbms_java.loadjava из моей локальной системы. Я пытаюсь выполнить следующий запрос.

call dbms_java.loadjava('–proxy -Dhttp.proxyHost=my_local_system_ip -Dhttp.proxyPort=22 file:///home/Documents/abc.jar');

Возвращается Call completed. Однако jar не загружен, поскольку я пытался получить доступ к методам в Jar и получаю сообщение об ошибке

ORA-29540: class com/pkg_name/function_name does not exist
29540. 00000 -  "class %s does not exist"  
*Cause:    Java method execution failed to find a class with the indicated name.
*Action:   Correct the name or add the missing Java class.

Однако те же методы доступны, когда jar загружен с помощью команды loadjava. Пожалуйста, предложите. Может быть, мне не хватает некоторых основ.

...