ERRO - Falha ao converter para representação interna

3 respostas
J

Pessoal alguem ja teve problema com esse erro?

java.sql.SQLException: SQLException no método getListaExtratoNotaFiscalNovo: SQLException no construtor ExtratoNotaFiscal(ResultSet p_rs, String tipo): Falha ao converter para representação interna
	tv1.dixAmico.SP.notafiscal.ExtratoNotaFiscal.getListaExtratoNotaFiscalNovoDefault(ExtratoNotaFiscal.java:344)
	tv1.dixAmico.SP.notafiscal.ExtratoNota.doProcess(ExtratoNota.java:57)
	org.apache.jsp.sp.servicos.resultado_005fextratoNota_jsp._jspService(resultado_005fextratoNota_jsp.java:82)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
public ArrayList<ExtratoNotaFiscal> getListaExtratoNotaFiscalNovoDefault(int p_codigoUnidadeNegocio, int p_numeroNotaFiscal, int tipoNota) throws SQLException, Exception{        
        ArrayList<ExtratoNotaFiscal> extratos = new ArrayList<ExtratoNotaFiscal>();
        
        String tipo = "novoExtrato";
        
        StringBuffer sql = new StringBuffer();        
        sql.append(" select te.cod_tip_contrato, te.cod_contrato, te.num_amico, te.num_depen, te.num_agreg, te.nom_benef, te.nom_secao, ");
	sql.append(" te.num_matricula, te.num_nota_fisc, te.cod_unid_negoc_gera, te.num_rps, te.num_nfe, te.val_nota, te.nom_obs,bf.NOM_BENEF, bf.NUM_DV, tp.COD_PARENT, tp.NOM_PARENT, lc.COD_LOCAL, lc.NOM_LOCAL, pl.cod_plano, ");
	sql.append(" pl.nom_plano, me.DAT_ADM_EMP , bf.DAT_INCLUSAO, mt.DAT_VALID_MATRI, me.NUM_REG_FUNC, bf.DAT_NASCI, ");
	sql.append(" (TO_NUMBER(TO_CHAR(SYSDATE,'yyyy')) - TO_NUMBER(TO_CHAR(bf.DAT_NASCI,'yyyy'))) as IDADE ");
	sql.append(" from(select * from web.nota_fiscal_extrato_web where cod_unid_negoc_gera = " + p_codigoUnidadeNegocio + " and num_nota_fisc = " +  p_numeroNotaFiscal + ") te, ");
	sql.append(" mvbenef_emp be, ");
	sql.append(" mvtipo_parentesco tp, ");
	sql.append(" mvlocal lc, ");
	sql.append(" mvmatricula mt, ");
	sql.append(" mvplano pl, ");
	sql.append(" mvmatri_emp me, ");
	sql.append(" mvbeneficiario bf ");
	sql.append(" where lc.COD_LOCAL = mt.COD_LOCAL ");
	sql.append(" and me.num_amico = mt.num_amico ");
	sql.append(" and pl.cod_plano = mt.cod_plano ");
	sql.append(" and be.NUM_AMICO = mt.NUM_AMICO ");
	sql.append(" and be.COD_PARENT = tp.cod_parent ");
	sql.append(" and bf.NUM_AMICO = mt.NUM_AMICO ");
	sql.append(" and bf.num_depen = be.num_depen ");
	sql.append(" and be.NUM_AMICO = te.NUM_AMICO ");
	sql.append(" and be.NUM_DEPEN = te.NUM_DEPEN ");
                      
        try{
            conn = SQLDIXSP.ConnectionOpen();
            stmt = conn.createStatement();
            rs_extrato = stmt.executeQuery(sql.toString());
            
            //Teste
            System.out.println("Valor da query com os dados da NF: " + sql.toString());
            
            while(rs_extrato.next()){      
                ExtratoNotaFiscal extrato = new ExtratoNotaFiscal(rs_extrato, tipo, tipoNota);
                
                //TESTE
                System.out.println(" ## EXTRATO ## : " + extrato);
                
                extratos.add(extrato);
                
            }
        }catch(SQLException sqlException){
            sqlException.printStackTrace();
            throw new SQLException("SQLException no método getListaExtratoNotaFiscalNovo: " + sqlException.getMessage());
        }catch(Exception exception){
            exception.printStackTrace();
            throw new Exception("Exception no método getListaExtratoNotaFiscalNovo: " + exception.getMessage());
        } finally {
            SQLAbstract.closeConnectionParameters(conn,stmt,rs_extrato);
        }   
        
        //TESTE
        System.out.println(" ## EXTRATOS ## : " + extratos);
        
        return extratos;
    }

se alguem puder me ajudar ou me dar alguma dica[/code]

3 Respostas

S

Qual a linha do erro?
Onde vc tá chamando esse construtor: ExtratoNotaFiscal(ResultSet p_rs, String tipo) ?

[]'s

T

Seu código não está muito legivel!

E

Faltou algumas partes do seu código para que eu possa afirmar onde está o erro, mas você fez algumas coisas não usuais, e estas já podem ajudar muito.

Depois de executar a query, você está pegando o ResultSet e inserindo no construtor da classe ExtratoNotaFiscal, isso não é o comum, afinal você está fechando o ResultSet logo abaixo ele peder o acesso ao banco;

  • Crie um objeto VO e passe os dados no construtor com ele;
Criado 15 de janeiro de 2008
Ultima resposta 10 de fev. de 2008
Respostas 3
Participantes 4