Hibernate + List, a lista ta retornando vazia

3 respostas
joaosavio

Ae pessoal a lista sempre ta retornando vazia, nao sei pq.

package DAO;

import VO.CadastrosVO;
import VO.UsuarioVO;
import org.hibernate.Session;
import org.hibernate.Transaction;

public class DAOFactory {
    
    private final Session session;
    private Transaction transaction;
    
    public DAOFactory() {
        session = HibernateUtil.getSession();
    }
    
    public void beginTransaction() { 
        this.transaction = this.session.beginTransaction();
    }
    
    public void commit() {
        this.transaction.commit();
        this.transaction = null;
    }
    
    public boolean hasTransaction() {
        return this.transaction != null;
    }
    
    public void rollback() {
        this.transaction.rollback();
        this.transaction = null;
    }
   
    public void close() {
        this.session.close();
    }
    
      
    public GenericDAO<CadastrosVO> getCadastrosDAO() {
       return new GenericDAO<CadastrosVO>(this.session, CadastrosVO.class);
    }
    
    
    
}
package DAO;

import java.util.List;
import org.hibernate.Session;

public class GenericDAO<T>
{
    private final Session session;
    private final Class classe;
    
    public GenericDAO(Session session, Class classe) {
        this.session = session;
        this.classe = classe;
    }
    
    //...

    public List<T> listaTudo() {
        return this.session.createCriteria(this.classe).list();
    }

A lista esta aqui

public class Cadastros extends javax.swing.JPanel 
{
    private TelaPrincipal tela;
    private Conexao conexao;
    private CadastrosVO cadVO;
    private List<CadastrosVO> lista;
    private int i = 0;
    private int salvar;
    private String ordenacao = "nome";
    private MaskFormatter formatoData, formatoRG, formatoCPF, 
                          formatoCEP, formatoTel, formatoCel; 
   
    
    
    public Cadastros(TelaPrincipal telaPr) 
    {
        initComponents();
        tela = telaPr;
                    
            
       //lista = new DAOFactory().getCadastrosDAO().listaTudo();
       
        DAOFactory dao = new DAOFactory();
        dao.beginTransaction();
          
        lista = dao.getCadastrosDAO().listaTudo();
       
        dao.commit();
        dao.close();
        
        
              
        
        if (!lista.isEmpty())
        {
            cadVO = lista.get(i);
            i++;
            mostraDados();  
            //preencheTabela();
                        
        } 
        else
        {
               System.out.println("Lista vazia");
        }

    }
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 27/05/2006 16:45:18 by Hibernate Tools 3.1.0 beta3 -->
<hibernate-mapping>
	<class name="VO.CadastrosVO" table="cadastros" schema="public">
                <id name="codigo" type="integer">
			<column name="codigo" />
			<generator class="assigned" />
		</id>
                <property name="nome" type="java.lang.String"/>
		<property name="data" type="java.lang.String"/>
                <property name="rg" type="java.lang.String"/>
                <property name="cpf" type="java.lang.String"/>
                <property name="escolaridade" type="java.lang.String"/>
                <property name="profissao" type="java.lang.String"/>
                <property name="telefone" type="java.lang.String"/>
                <property name="celular" type="java.lang.String"/>
                <property name="email" type="java.lang.String"/>
                <property name="endereco" type="java.lang.String"/>
                <property name="numero" type="java.lang.String"/>
                <property name="bairro" type="java.lang.String"/>
                <property name="cidade" type="java.lang.String"/>
                <property name="cep" type="java.lang.String"/>
                <property name="uf" type="java.lang.String"/>
                <property name="comentarios" type="java.lang.String"/>
        </class>
</hibernate-mapping>

3 Respostas

joaosavio

up

joaosavio

pessoal com a outra classe (UsuarioVO) ta funcionando blza

só com o CadastrosVO retorna vazio (e há dados no banco)

Espero que possam ajudar

joaosavio

resolvido ja

Criado 22 de fevereiro de 2008
Ultima resposta 23 de fev. de 2008
Respostas 3
Participantes 1