Olá pessoal
Em uma base de dados Oracle, estou tentando retornar um Cursor. Para falar a verdade, nem sei se isso é possível, mas está me retornando NullPointerException toda vez.
Se puderem me ajudar, agradeço. Segue o código:
[code]package br.com.xxxx.xxx.xxxx;
import java.sql.CallableStatement;
import java.sql.ResultSet;
import oracle.jdbc.OracleTypes;
public class MontaPerfil {
private Conexao conn;
private CallableStatement pstmt = null;
public String sql = null;
public ResultSet rs = null;
protected ResultSet buscaPerfil(int codFuncionario,
int codSistema,
int codServico){
this.conn = new Conexao();
conn.conecta();
sql = "call PERFIL_DE_ACESSO.buscaPerfil(?,?,?,?)";
try{
pstmt = conn.getConn().prepareCall(sql);
pstmt.setInt(1,codFuncionario);
pstmt.setInt(2,codSistema);
pstmt.setInt(3,codServico);
pstmt.registerOutParameter(4, OracleTypes.CURSOR); // retorna um cursor
pstmt.execute();
rs = pstmt.getResultSet();
}catch(Exception e){
System.out.println("ERRO 200: " + e.toString());
e.printStackTrace();
}finally{
conn.desconecta();
}
return rs;
}
}[/code]
Abraços