hola..! Soy nuevo en el mundo Java, y tengo un problema al utilizar ref cursor de Oracle.
He seguido varios ejemplos que me he bajado de la web, pero todos ellos me retornar el error:
SqlException: Longitud de tipo mayor que el maximo permitido
Este error se genera en el comando cn.execute();
En mi bd oracle :
create or replace package REFCURSOR_PKG as
TYPE vCursor IS REF CURSOR;
end REFCURSOR_PKG;
create or replace procedure test( p_deptno IN number
, p_cursor OUT REFCURSOR_PKG.vCURSOR)
is
begin
open p_cursor FOR
select *
from emp
where deptno = p_deptno;
end test;
en java:
public void method()...
Connection conn = getConnection();
CallableStatement cstmt = null;
ResultSet rs = null;
int deptno = 10;
Object temp;
try{
cstmt = conn.prepareCall("begin test(?,?); end;");
cstmt.setInt(1, deptno);
cstmt.registerOutParameter(2, OracleTypes.CURSOR);
cstmt.execute();//aca salta el error
.....
Les agradeceria si me pueden orientar sobre el error .
Muchas gracias.