我在SQL Plus裡寫了一個java Source進行測試,以下是全部過程,可運行時總出現method not found的錯誤,請高手幫忙看看:
1. 創建java source並且編譯通過!
create or replace and compile java source named testJavaSource as
public class testJavaSource
{
public static void entry()
{
System.out.println("entry() been called!");
}
public void sayOK(){
System.out.println("Load java source ok!測試成功!");
}
}
2. 查詢創建情況:
SVRMGR> select dbms_java.longname(object_name) name,object_type type,status from user_objects where object_type like 'JAVA%';
NAME TYPE STATUS
---------------------------------------------------------------------
TESTJAVASOURCE JAVA SOURCE VALID
testJavaSource JAVA CLASS VALID
選取了 2 筆資料列.
3. 創建procedure呼叫java class並編譯通過!
create or replace procedure HelloWorld
as language java name 'testJavaSource.sayOK()';
4. 在sql plus裡執行procedure!
SQL> set serveroutput on size 5000
SQL> call dbms_java.set_output(5000); 已完成呼叫.
SQL> execute HelloWorld;
BEGIN HelloWorld; END; *
ERROR 在行 1:
ORA-29531: no method sayOK in class testJavaSource
ORA-06512: at "PYE.HELLOWORLD", line 0
ORA-06512: at line 1
--------------------------------------------------------------
以上,請高手幫忙解決!
萬分感謝!
1. 創建java source並且編譯通過!
create or replace and compile java source named testJavaSource as
public class testJavaSource
{
public static void entry()
{
System.out.println("entry() been called!");
}
public void sayOK(){
System.out.println("Load java source ok!測試成功!");
}
}
2. 查詢創建情況:
SVRMGR> select dbms_java.longname(object_name) name,object_type type,status from user_objects where object_type like 'JAVA%';
NAME TYPE STATUS
---------------------------------------------------------------------
TESTJAVASOURCE JAVA SOURCE VALID
testJavaSource JAVA CLASS VALID
選取了 2 筆資料列.
3. 創建procedure呼叫java class並編譯通過!
create or replace procedure HelloWorld
as language java name 'testJavaSource.sayOK()';
4. 在sql plus裡執行procedure!
SQL> set serveroutput on size 5000
SQL> call dbms_java.set_output(5000); 已完成呼叫.
SQL> execute HelloWorld;
BEGIN HelloWorld; END; *
ERROR 在行 1:
ORA-29531: no method sayOK in class testJavaSource
ORA-06512: at "PYE.HELLOWORLD", line 0
ORA-06512: at line 1
--------------------------------------------------------------
以上,請高手幫忙解決!
萬分感謝!
把這段改成這樣:
create or replace and compile java source named testJavaSource as
public class testJavaSource
{
public static void entry()
{
System.out.println("entry() been called!");
}
public static void sayOK(){
System.out.println("Load java source ok!測試成功!");
}
}
抄書上抄得太快,以致忘了java是怎麼執行的了^^
thanks all!