Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/01/2012, 15:15
shianim
 
Fecha de Ingreso: febrero-2010
Mensajes: 17
Antigüedad: 14 años, 9 meses
Puntos: 1
Pregunta error al rescatar parametro varchar2 desde java

Amigos, tengo una clase java desde la que llamo un procedimiento almacenado, que tiene 2 parámetros de salida un cursor y un varchar2, los rescato sin problema en java, es decir no se cae la clase, pero al ver el valor que trae el varchar2 me sale el siguiente mensaje:

No existe mensaje definido para el código de error: 106

Creo que estoy rescatando el dato con un tipo que no es, pero ya los he probado todos los que puedan ser compatibles con String y me aparece el mismo mensaje, espero me puedan ayudar, este es el código de mi clase.

package pruebas;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;

import java.sql.CallableStatement;

import java.util.ArrayList;

import javax.naming.NamingException;

import oracle.jdbc.OracleTypes;
import oracle.jdbc.oracore.OracleType;

public class PruebaSp {

private Connection con_Oracle;
private String sbd = "xe";
private String suser = "jvg";
private String spass = "jvg";
private String surl = "jdbc:oracle:thin:@172.17.176.119:1521:" + sbd;



public void PruebaLamadaASp(){
ResultSet rsResultado = null;
String sResultado;
SV_mensaje in out nocopy varchar2);
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
con_Oracle = DriverManager.getConnection(surl, suser, spass);

CallableStatement csSp = con_Oracle.prepareCall("{call PKG_BCO_CONSULTA_PG.PRC_BCO_OBTENER_BANCOS_PR(?,?) }");

csSp.registerOutParameter(1,OracleTypes.CURSOR);
csSp.registerOutParameter(2,Types.VARCHAR);

csSp.execute();

rsResultado = (ResultSet)csSp.getObject(1);
sResultado = csSp.getString(2).toString();

System.out.println(sResultado);
/*
while(rsResultado.next()){
System.out.println(sResultado);
}
*/
}catch(Exception e){
e.printStackTrace();
}
}
}