Exceção Unable to configure EntityManagerFactory ao usar Hibernate, preciso de ajuda

5 respostas
A

Pessoal estou lendo a apostila do pessoal da K19 sobre JSF, mas me deparei com um exemplo de uso do hibernate que está dando erro aqui comigo, e não consigo resolver.(pág. 54 da apostila)
Se alguém puder me ajudar, eu ficarei muito grato.
Este é meu xml de configuração:

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence 
    http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
    version="1.0">
    
    <persistence-unit name="JPA" transaction-type="RESOURCE_LOCAL">
    
 		<provider>org.hibernate.ejb.HibernatePersistence</provider>
		<class>livraria.Editora</class>
		<properties>
 			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
 			<property name="hibernate.hbm2ddl.auto" value="none"/>
 			<property name="hibernate.show_sql" value="true" />
			<property name="hibernate.format_sql" value="true" />
 			<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
 			<property name="javax.persistence.jdbc.user" value="root"/>
			<property name="javax.persistence.jdbc.password" value="123456"/>
			<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/biblioteca"/>
 		</properties>
 		
 	</persistence-unit>
 
    
    </persistence>
E agora o erro:
Exception in thread "main" javax.persistence.PersistenceException: [PersistenceUnit: InsereEditoraComJPA] Unable to configure EntityManagerFactory
	at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:374)
	at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:56)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
	at livraria.InsereEditoraComJPA.main(InsereEditoraComJPA.java:17)
Caused by: org.hibernate.AnnotationException: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator.<init>(java.lang.Class, java.util.ResourceBundle, org.hibernate.validator.MessageInterpolator, java.util.Map, org.hibernate.annotations.common.reflection.ReflectionManager)
	at org.hibernate.cfg.Configuration.applyHibernateValidatorLegacyConstraintsOnDDL(Configuration.java:1651)
	at org.hibernate.cfg.Configuration.applyConstraintsToDDL(Configuration.java:1623)
	at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1415)
	at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1345)
	at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1477)
	at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:193)
	at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:1096)
	at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:278)
	at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:362)
	... 4 more
Caused by: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator.<init>(java.lang.Class, java.util.ResourceBundle, org.hibernate.validator.MessageInterpolator, java.util.Map, org.hibernate.annotations.common.reflection.ReflectionManager)
	at java.lang.Class.getConstructor0(Unknown Source)
	at java.lang.Class.getDeclaredConstructor(Unknown Source)
	at org.hibernate.cfg.Configuration.applyHibernateValidatorLegacyConstraintsOnDDL(Configuration.java:1639)
	... 12 more

5 Respostas

R

Olá Anjo Vingador,

Aparentemente é erro com os jars que você adicionou ao classpath do seu projeto.

Dê uma verificada neste artigo e confira se os jars que você adicionou ao classpath são os mesmos:

www.k19.com.br/artigos/configurando-hibernate-com-mysql/

A

Era isso mesmo brother, valeu por responder.
To meio que pegando pilha com os jars, pois constantemente tenho enfrentado esse problema seguindo alguns exemplos de apostilas
Tem como identificar o jar certo olhando alguma coisa?
Pois isso acontece mesmo com jars com mesmo nome.
Falow.

R

Então,

Olhando a exceção e vendo o erro, é possível tentar supor o que está faltando. É sempre bom saber o que cada jar representa no projeto.

Quando você se depara com:

ClassNotFoundException

NoSuchMethodException

Muitas vezes é problema de versão das jars ou falta de alguma.

G

Aproveitando o tópico já aberto, o mesmo está ocorrendo comigo.
No momento de instanciar o EntityManager…

Persistence.createEntityManagerFactory(getAmbiente("JPA")).createEntityManager()

…está me retornando a seguinte Exception:

[PersistenceUnit: JPA] Unable to configure EntityManagerFactory null

O que será que pode ser?

Segue o persistence.xml:

<?xml version="1.0" encoding="UTF-8"?> <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> <persistence-unit name="PRODUCAO.SANTOSBRASIL.MANIFESTO" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <class>br.com.santosbrasil.persistencia.jpa.manifesto.entidade.NavioManifestado</class> <class>br.com.santosbrasil.persistencia.jpa.manifesto.entidade.ViagemManifestada</class> <properties> <property name="hibernate.connection.username" value="mnft"/> <property name="hibernate.connection.driver_class" value="oracle.jdbc.OracleDriver"/> <property name="hibernate.connection.password" value="mnft"/> <property name="hibernate.connection.url" value="jdbc:oracle:thin:@10.1.1.60:1521:MNFT"/> <property name="hibernate.cache.provider_class" value="org.hibernate.cache.NoCacheProvider"/> </properties> </persistence-unit> </persistence>

G

Problema resolvido.

Uma anotação @ManyToOne não estava acompanhado do @JoinColumn. Inseri e resolvi. Obrigado galera.

Criado 25 de novembro de 2010
Ultima resposta 21 de set. de 2011
Respostas 5
Participantes 3