DBMS_RUNJAVA找不到我的班级

时间:2014-08-04 12:41:27

标签: java oracle loadjava

我想在我的oracle服务器12C上运行一个java程序。 我尝试过,但它不起作用:

CREATE OR REPLACE JAVA SOURCE NAMED "HELLO" AS
public class Hello {
      public static void main(String[] args){
        System.out.println("succeed");
      }
}
;

SELECT dbms_java.runjava('-cp jserver:/CP/SHARED_DATA/PRIVATE/SCHEMA/LLAMARCHE/ Hello')  FROM DUAL;

返回:

ORA-29532: Java call terminated by uncaught Java exception: java.lang.ClassNotFoundException: Hello

感谢......

1 个答案:

答案 0 :(得分:0)

您也可以通过其他方式执行此操作:

首先,创建java类。

CREATE OR REPLACE AND COMPILE JAVA SOURCE NAMED "Hello" AS
import java.io.*;
public class Hello {
public static void executeCommand() {
    System.out.println("succeed");
}
};
/

稍后,创建一个调用此类的oracle过程,如下所示。

CREATE OR REPLACE procedure CallHello
AS LANGUAGE JAVA
NAME 'Hello.executeCommand ()';

最后,从编辑处拨打电话。

begin
CallHello;
end;

我希望这会有所帮助。