Problema com hibernate

Tenho uma classe Autor mapeada no hibernate com os campos nome,email.

session.beginTransaction();
Query q = session.createQuery("select nome,email from Autor"); 			
List l = q.list();			
			   
 for (int i = 0; i < l.size();i++) {
	  Autor x = (Autor) l.get(i);
 	  JOptionPane.showMessageDialog(null,x.getNome());
  }			   			
			   
   session.getTransaction().commit();

pelo que vi no código, a variável local l recebe o resultado da query… só que Autor nao consegue receber o conteúdo de l e o erro acontece nesse x.getNome()

alguem pode ajudar?

Poste a mensagem de erro.

Olá,

Se você colocar sua query assim não funciona?

Query q = session.createQuery("from Autor autor"); 

o erro é:

java.lang.Class.CastException:[Ljava.lang.Object;

:cry:

se eu colocar

Query q = session.createQuery("from Autor autor"); 

Dá o erro:

org.hibernate.InstantiationException: No default constructor for entity: Estrutura.Autor

Se vc quiser que o Hibernate crie os objetos pra vc, deverá criar um contrutor default pra sua classe Autor.
algo como

public Autor(){}

"The no-argument constructor is required to instantiate an object of this class"
http://www.hibernate.org/hib_docs/v3/reference/en/html/tutorial.html

[]´s
Rodrigo

cara… criei o construtor padrão

ai fiz um


Criteria select = session.createCriteria(Autor.class);

List l = select.list();
			   
			   for (int i = 0; i < l.size();i++) {
				  Autor x = (Autor) l.get(i);
				  autores.add(x.toVector());
			   }		

deu certinho… obrigado