Erro ao tentar executar o Hibernate

6 respostas
MauNunes

Faz um tempo que estou apanhando e ate agora nada. Estou tentando rodar o hibernate nas seguintes versões

hibernate-distribution-3.3.1.GA
hibernate-annotations-3.4.0.GA
hibernate-entitymanager-3.4.0.GA

Depois de muito apanhar com a falta da biblioteca que não especificada na documentação, o negócios começou a gerar outro erro.

Exception in thread "main" java.lang.ExceptionInInitializerError
	at org.hibernate.cfg.Configuration.reset(Configuration.java:201)
	at org.hibernate.cfg.AnnotationConfiguration.reset(AnnotationConfiguration.java:233)
	at org.hibernate.cfg.Configuration.<init>(Configuration.java:220)
	at org.hibernate.cfg.Configuration.<init>(Configuration.java:224)
	at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:108)
	at org.hibernate.ejb.Ejb3Configuration.<clinit>(Ejb3Configuration.java:107)
	at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:124)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
	at test.br.dgabc.rotasabc.main.Test.main(Test.java:19)
Caused by: java.lang.NullPointerException
	at org.hibernate.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:167)
	at org.hibernate.cfg.Environment.<clinit>(Environment.java:558)
	... 10 more

Abaixo o código que executo

public static void main(String[] args) {
				
		EntityManagerFactory emf = Persistence.createEntityManagerFactory("rotasABC");
		
		EntityManager em = emf.createEntityManager();
		EntityTransaction tx = em.getTransaction();
		tx.begin();
		
		Usuario usuario = new Usuario();
		usuario.setNome("Mauricio Nunes");
		usuario.setEmail("[email removido]");
		usuario.setDataCadastro(new Date());
		
		em.persist(usuario);
		tx.commit();
		em.close();
	}

Pelo pouco que conheço só preciso criar um arquivo persistence.xml dentro da pasta META-INF e fazer o mapeamento das classes. O que estou fazendo errado? Será que é tão complicado fazer iso rodar?

6 Respostas

T

Já tentou debugar pra ver em qual linha está ocorrendo a exceção??? BOm, nunca usei JPA, só Hibernate mesmo, mas o hibernate-cfg.xml (arquivo de mapeamento das classes) eu crio no pacote SRC da aplicação… tenta verificar em qual linha da erro…

Fernando_Generoso_da

Pelo erro, não está encontrando teu persistence.xml, ou arquivo de configuração do Hibernate…

MauNunes

O persistence está lá. eu coloquei ele dentro do META-INF.
Sobre o hibernate-cfg.xml, eu imagino que o mesmo não seja necessário já que estou utilizando o persistence.xml. Mesmo assim fiquei na dúvida onde coloquei o persistence.xml. Não lembro de ter colocado o META-INF dentro da pasta src. Vou chegar em casa e dar uma olhada nisso. Qualquer novidade comunico vocês.
Obrigado.

MauNunes

Bom o erro ocorre ln linha EntityManagerFactory emf = Persistence.createEntityManagerFactory("Teste");
Abaixo segue o código e o persistence XML.

public static void main(String[] args) {
				
		EntityManagerFactory emf = Persistence.createEntityManagerFactory("rotasABC");
		
		EntityManager em = emf.createEntityManager();
		EntityTransaction tx = em.getTransaction();
		tx.begin();
		
		Usuario usuario = new Usuario();
		usuario.setNome("Mauricio Nunes");
		usuario.setEmail("[email removido]");
		usuario.setDataCadastro(new Date());
		
		em.persist(usuario);
		tx.commit();
		em.close();
	}

org.hibernate.ejb.HibernatePersistence


br.com.dgabc.rotasabc.model.Usuario

















Fernando_Generoso_da

Só um detalhe…observe,

este trecho:

EntityManagerFactory emf = Persistence.createEntityManagerFactory("rotasABC");

e este trecho:

&lt;persistence-unit name="Teste"&gt;

percebe alguma coisa??

Fernando

MauNunes

Oi Fernando, tudo bem?
Esse erro foi colocado ao postar o código aqui. Na aplicação os nomes são o mesmo.
Abraços e obrigado.

Criado 18 de junho de 2009
Ultima resposta 30 de jun. de 2009
Respostas 6
Participantes 3