Dúvida ao configurar Hibernate [resolvido]

Olá, Pessoal

Sou novo aqui no portal.

Comecei a estudar Hibernate, porém por conta própria.
Em outro tópico aqui do portal encontrei um link para um tutorial que está me ajudando bastante.
Estava tudo indo muito bem até que apareceu um erro cujo motivo não estou conseguindo descobrir.

O que fiz até agora:

  • baixei os .jar do Hibernate Core e do Hibernate Annotations e coloquei no diretório WEB-INF/lib

  • criei uma classe Produto já com os comentários especiais (@Entity, @Column, @Id, etc.)

  • no tutorial que estou seguindo, é criada uma classe GeraTabelas (cujo código postarei abaixo). A classe compila, mas no momento de execução dá o seguinte erro:

Exception in thread “main” java.lang.NoClassDefFoundError: org/dom4j/DocumentException
at br.com.hibernate.GeraTabelas.main(GeraTabelas.java:12)

Estou usando o Eclipse e estou tentando rodar a classe GeraTabelas através dele. Também tentei rodar a classe através do prompt de comando e deu a mesma exceção.

Até onde eu sei, esse erro ocorre quando não é encontrado o .class do aplicativo (que, no caso, acho que é o AnnotationConfiguration.class). Só que achei estranho pois ele enxerga a classe no Eclipse (não dá erro de compilação).

Bem, espero ter especificado bem o problema e também espero que vocês me ajudem. Em breve, com a ajuda de vocês, estarei com mais experiência e pronto para ajudar muitos outros.

package br.com.hibernate;

import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;

public class GeraTabelas {

   public static void main(String[] args){
		
      //Cria uma configuração para a classe Produto
      AnnotationConfiguration cfg = new AnnotationConfiguration();
      cfg.addAnnotatedClass(Produto.class);
      new SchemaExport(cfg).create(true,true);
   }
}

Obs.: A linha 12 (que dá erro em tempo de execução) é a linha “AnnotationConfiguration cfg = new AnnotationConfiguration();”

Edit: Não sei se essa informação é relevante, mas o propósito de eu rodar essa classe “GeraTabelas” é porque ela escreve no console o código DDL para a criação da tabela de Produto.

Coloque o JAR do DOM4J no classpath.

valeu, Guilherme.

Depois que eu coloquei o JAR do DOM4j no classpath, estourou outro erro de .class não encontrado. Daí percebi que tinha faltado colocar vários .jar do diretório /lib do Hibernate. Coloquei todos os outros e funcionou.

[]'s

[quote=“rafaelvs”]valeu, Guilherme.

Depois que eu coloquei o JAR do DOM4j no classpath, estourou outro erro de .class não encontrado. Daí percebi que tinha faltado colocar vários .jar do diretório /lib do Hibernate. Coloquei todos os outros e funcionou.

[]'s[/quote]

Legal… :grin: