загрузка класса Java в базу данных Oracle через TOAD

Хотя указанный вопрос аналогичен, он говорит о размещении исходного кода в базе данных, а не в классе, также я хотел бы использовать утилиты TOAD для этого.

Итак, в качестве доказательства концепции я пытался загрузить класс java в базу данных Oracle 12c и получить к нему доступ через функцию Oracle.

Я открыл Eclipse и создал новый проект Hello с классом Hello:

public class Hello {

  public static String world()
    {

      return "Hello world";

    }

}

Я скомпилировал его, и теперь на моем клиенте у меня есть

C:\Users\me\workspaces\Hello\bin\Hello.class

Я открыл TOAD для базы данных oracle 12c, затем перешел в утилиты/Java Manager и загрузил свой класс:

Скриншот из ЖАБЫ

TOAD говорит, что он успешно загружен. Однако я не уверен, что это так.

Затем я зашел в редактор TOAD и создал функцию:

CREATE OR REPLACE function "DIR\KBD0010".helloworld RETURN VARCHAR2 AS
LANGUAGE JAVA NAME 'Hello.world () return java.lang.string';

Затем я попытался выбрать его с помощью sql-запроса:

select helloworld()
from dual;

И тогда я получаю:

ORA-29540: class Hello does not exist

person Bryan Dellinger    schedule 14.06.2016    source источник
comment
Возможный дубликат Вызов Java из PL/SQL   -  person Vijay    schedule 14.06.2016
comment
@Vijay Не полный дубликат, поскольку OP загрузил класс Java в базу данных с помощью жабы, которая, по-видимому, использует утилиту Oracle loadjava в фоновом режиме (или, по крайней мере, имеет сверхъестественное сходство в параметрах и полях, которые он принимает в качестве параметров) . Этот вопрос больше похож на шаги в этом связанном вопросе, почему он все еще не работает?   -  person MT0    schedule 14.06.2016
comment
Параметр resolve используется для компиляции исходного кода в байтовый код — вы уже сделали это при загрузке файла .class, поэтому вам не нужно выбирать этот параметр. Кроме того, если вы попробовали это, а затем попытались перезагрузить его во второй раз, вам нужно будет проверить опцию force, чтобы перезагрузить файл - если вы этого не сделаете, Oracle проигнорирует загрузку.   -  person MT0    schedule 14.06.2016
comment
отключил флажок разрешения и включил параметр принудительного выполнения, но все равно не повезло.   -  person Bryan Dellinger    schedule 14.06.2016