Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/08/2005, 06:42
sanmi69
 
Fecha de Ingreso: septiembre-2004
Mensajes: 191
Antigüedad: 20 años, 6 meses
Puntos: 1
Erroral lanzar funcion de PL/SQL desde JDBC - SOLUCIONADO

Buneo al lanzar una funcion pl/SQL de oracle desde java me lanza esta excepcion:

Código PHP:
Caused byjava.lang.NullPointerException
    at oracle
.jdbc.ttc7.TTCAdapter.newTTCType(TTCAdapter.java:300)
    
at oracle.jdbc.ttc7.TTCAdapter.createNonPlsqlTTCColumnArray(TTCAdapter.java:270)
    
at oracle.jdbc.ttc7.TTCAdapter.createNonPlsqlTTCDataSet(TTCAdapter.java:231)
    
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1843)
    
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1093)
    
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2047)
    
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1940)
    
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2709)
    
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:589
La funcion se lanza con un CallableStatement:

Código PHP:
callableStatement conexionBD.prepareCall("? = CALL ALQ_PCK_EXTERNO.ALQ_FN_EXISTE_CARTA_PAGO (?)");     
      for (
int i 0intParametrosi++) {
        
fncPonerParametroProcedimiento(callableStatement1, (ClsParametroSQL)arrPfParametros.get(i));
      }
      
ClsLog.info("Puestos Parámetros");
      
callableStatement.executeUpdate(); 
Y me casca en el executeUpdate, lanzando el null puinter exception. La funcion fncPonerParametroProcedimiento mete dos parametros al statement, el primero es un output parameter registrado con registerOutParameter para poder recojer el resultado.

La cuestion esq esto siempre me ha funcionado bien para llamar a procedimientos, y ahora q es una funcion me casca aki Quizas sea tb q los procedimientos q he ejecutado no tenian parametros de retorno.

Si alguno sabeis el error.....
saludos

Última edición por sanmi69; 04/08/2005 a las 06:12 Razón: Solucionado