Problemas com o Hibernate!

4 respostas
B

Olá,
Estou começando agora com o Hibernate, e estou seguindo um tutorial que encontrei na net.
Acontece que está dando erro nessa parte do código:

public java.util.List getList(String condicao) throws Exception{
      Session session = factory.openSession();
      [b]List amigos = session.find(condicao);[/b]
      session.flush();
      session.close();
      return amigos;
}

Estou importando o seguinte:

import java.util.*;
import org.hibernate.*;
import org.hibernate.cfg.Configuration;

O erro e:

C:\Documents and Settings\tavarebr\My Documents\NetBeans\Amigos\src\TesteAmigos\AmigoDAO.java:24: cannot find symbol
symbol  : method find(java.lang.String)
location: interface org.hibernate.Session
      List amigos = session.find(condicao);
1 error

Então fui procurar na classe Session e realmente não existe o método find(). Eu consegui encontrar ele na classe “org.hibernate.Classic”. Mas todos os exemplos que vejo eles utilizam o session…

O que posso fazer ???

4 Respostas

pauloperes

Kra,

O exemplo q vc usa deve estar usando o hibernate 3. Para ajudar veja a documentação:
http://www.hibernate.org/hib_docs/v3/reference/en/html/querycriteria.html

Atenciosamente,
Paulo

dorivalac

Parece que é um classico erro de falta de CLASSPATH, faça o seguinte, incluia o hibernate2.jar no seu classpath.

javac -classpath ./hibernate2.jar:. AmigoDAO.java

(considerando que o jar hibernate 2 esteja nesta pasta)

Você está perto, é uma questao de achar os JARs.

abraços
Dorival

B

Eu estou usando o Hibernate 3.
E meu classpath está correto, é só esse método que está dando erro.

Mas o que eu acho estranho é não ter o método find() dentro do “org.hibernate.Session”, e sim no “org.hibernate.Classic”

pauloperes

Brunno,

Seguinte, o metodo find pelo o que andei olhando ésta depreciado, veja:

These deprecated methods are:

query execution methods: find(), iterate(), filter(), delete()

vi isto no link:
http://www.hibernate.org/250.html

este é um guia de migração.

Complementando:

Query consulta = sessao.createQuery("from Aluno");       
        List<Aluno> alunos = consulta.list();

Atenciosamente,

Paulo

Criado 16 de agosto de 2005
Ultima resposta 16 de ago. de 2005
Respostas 4
Participantes 3