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;
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