Мне нужно загрузить файл JAR в базу данных Oracle, используя dbms_java.loadjava
из удаленной системы.
Я попытался call dbms_java.loadjava('–proxy -Dhttp.proxyHost=remote_system_ip -Dhttp.proxyPort=22 file:///home/abc.jar');
Его возврат Call completed.
Однако, В то время как функции в банке с использованием PLSLQ приводят к ошибке ниже.
ORA-29540: class com/pkg_name/class_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.
Однако, когда вы загружаете банку на сервер базы данных Oracle и делаете то же самое с помощью команды loadjava
, она работает нормально.
loadjava -user dbuser/dbpass path_to_jar/abc.jar
Затем я могу получить доступ к функциям в файле jar из моего кода PL SQL.
Кроме того, еще одна вещь, которую я заметил при запуске dbms_java.loadjava
, это Выполнение успешно для приведенной ниже команды, даже если abc1.jar
не является допустимым именем файла и не существует.
call dbms_java.loadjava('–proxy -Dhttp.proxyHost=remote_system_ip -Dhttp.proxyPort=22 file:///home/abc1.jar');
Пожалуйста, предложите.