Já vi alguns tópicos pela net a respeito desse caso, porém, até agora nenhum funcionou para o meu caso. Segue o código e após o stack trace:
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Types;
public class HerancaTeste {
public static boolean verificaHeranca(Integer idSistema) {
CallableStatement callableStatement = null;
int resp = 0;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@10.11.40.92:1521:XXX", "user", "senha");
callableStatement = con.prepareCall(" { call sp_teste_buxiro(?,?) } ");
callableStatement.setInt(1, idClasse.intValue());
//Prepara as variaveis de retorno da procedure.
callableStatement.registerOutParameter(2, Types.NUMERIC, 2);
callableStatement.registerOutParameter(3, Types.NUMERIC, 2);
callableStatement.registerOutParameter(4, Types.NUMERIC, 2);
callableStatement.registerOutParameter(5, Types.NUMERIC, 2);
callableStatement.registerOutParameter(6, Types.NUMERIC, 2);
callableStatement.registerOutParameter(7, Types.NUMERIC, 2);
callableStatement.registerOutParameter(8, Types.INTEGER);
callableStatement.execute();
resp = callableStatement.getInt(2);
callableStatement.close();
return (resp == 1 ? true : false);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
Stacktrace:
Exception in thread "main" java.lang.NullPointerException
at oracle.jdbc.ttc7.TTCAdapter.newTTCType(TTCAdapter.java:270)
at oracle.jdbc.ttc7.TTCAdapter.createNonPlsqlTTCColumnArray(TTCAdapter.java:256)
at oracle.jdbc.ttc7.TTCAdapter.createNonPlsqlTTCDataSet(TTCAdapter.java:231)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1412)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:862)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1839)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1764)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2354)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:421)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:486)
at HerancaTeste.verificaHeranca(HerancaTeste.java:30)
at Conectiva.main(Conectiva.java:5)