Hi,
I am receiving the above error trying to call a java method from plsql. I am far from a java expert and though I feel the error is due to a data type mismatch between the definition of the pl/sql wrapper and that of the java, I am at a loss as to how to resolve it..
I have loaded the java successfully using loadjava and querying user_objects confirms the java is valid.
OBJECT_NAME OBJECT_TYPE STATUS
------------------------------ ------------------- -------
com/nz/utils/DBUtils JAVA SOURCE VALID
com/nz/utils/DBUtils JAVA CLASS VALID
The method is defined thus:
public static void preProcessData(InputStream inputStream, OutputStream byteOutputStream, StringBuilder xmlData, Integer samples, List<Integer> packetNumbers) throws IOException
The procedure is defined as
create or replace procedure c_plus_parser (p_file blob, p_trace_data blob, p_xml_metadata clob, p_samples pls_integer, p_packet_nos num_arr_t) as
language java
name 'com.nz.utils.DBUtils.preProcessData(java.lang.InputStream, java.lang.OutputStream, java.lang.StringBuilder, java.lang.Integer, java.lang.List)';
/
The parameters p_trace_data and p_xml_metadata are OUT parameters ( though I received PLS-00235: the external type is not appropriate for the parameter when explicitly marking them as such.)
However when I call the procedure from an annonymous pl/sql block I receive the following:
ERROR at line 1:
ORA-29531: no method preProcessData in class com/nz/utils/DBUtils
ORA-06512: at "ZOID.C_PLUS_PARSER", line 1
ORA-06512: at line 12
Any help that can point me in the right direction would be much appreciated.
Thanks
Ralph