This discussion is archived
1 Reply Latest reply: Feb 12, 2013 10:57 PM by Marwim RSS

Calling the Java Method in PL/SQL Java Stored procedure errors out

629026 Newbie
Currently Being Moderated
Hi,

I could not find a suitable thread to post my PL/SQL question so iam posting it here.........

I have written a java class by name XYZ which has a method ABC for which there are 9 arguements being passed and its a VOID method.

This java class has been loaded into ORACLE using DBMS_JAVA.LOADJAVA pkg, Now this class is being called in the oracle as a JAVA Stored procedure...... When ever im trying to call the procedure it throws the following error

ORA-29531: no method
*Cause:    An attempt was made to execute a non-existent method in a
Java class.
*Action:   Adjust the call or create the specified method.


The code snippet as follows

JAVA CODE:
-----------------------

Class xyz
{

public static void Abc (String hostName,
int port,
String serviceURL,
String soapAction,
int timeOut,
String wsUser,
String wsPasWd,
String keyStore,
String keyStorePasWd)
{
//method implementation
}

}


JAVA STORED PROCEDURE:
---------------------------------------------

create OR REPLACE procedure ABC_JAVA_SP_CALL
(p_hostname in varchar2, p_port in number, p_serviceurl in varchar2, p_soapaction in varchar2, p_timeout in number, p_wsuser in varchar2, p_wspasswd in varchar2, p_ks_path in varchar2, p_ks_passwd in varchar2)
as
language java
name 'xyz.Abc(java.lang.String, int, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String, java.lang.String)';

When i try to call

declare
p_hostname varchar2(100);
p_port number;
p_serviceurl varchar2(100);
p_soapaction varchar2(100);
p_timeout number;
p_wsuser varchar2(100);
p_wspasswd varchar2(100);
p_ks_path varchar2(100);
p_ks_passwd varchar2(100);

begin

//SP which returns the values for the required parameters.

comppkg.getvcsinfo(
p_hostname,
p_port ,
p_serviceurl,
p_soapaction,
p_timeout,
p_wsuser,
p_wspasswd,
p_ks_path,
p_ks_passwd
);

Layer7_icengc_ws_tes(p_hostname,
p_port ,
p_serviceurl,
p_soapaction,
p_timeout,
p_wsuser,
p_wspasswd,
p_ks_path,
p_ks_passwd);

end;

This thing ends up with

29531. 00000 - "no method %s in class %s"
*Cause:    An attempt was made to execute a non-existent method in a
Java class.
*Action:   Adjust the call or create the specified method.


Im not understanding what wrong am i doing

pls help

Edited by: madhusudan on Feb 12, 2013 8:07 PM
  • 1. Re: Calling the Java Method in PL/SQL Java Stored procedure errors out
    Marwim Expert
    Currently Being Moderated
    Hello,

    there is the forum {forum:id=65} for questions about using Java within Oracle.

    Regards
    Marcus

    Edited by: Marwim on 13.02.2013 07:56
    I could not find a suitable thread to post my PL/SQL question so iam posting it here.........
    You got the hint to the correct forum alread in another thread {message:id=10837976}

    And if you think this is not related to Java but PL/SQL, then you should ask in {forum:id=75}

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points