Problemas com o EntityManagerFactory no Hibernate

Pessoal, estou com este problema que não estou conseguindo fazer um armazenamento simples no banco com o hibernate.

Meu persistence.xml está assim:

<?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="lojavirtual"> 
<provider>org.hibernate.ejb.HibernatePersistence</provider> 
<class>entities.Produto</class> 
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
<property name="hibernate.hbm2ddl.auto" value="update" /> 
<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.url" value="jdbc:mysql://localhost/lojavirtual" /> 
<property name="javax.persistence.jdbc.user" value="root" /> 
<property name="javax.persistence.jdbc.password" value="mysql" /> 
</properties> 
</persistence-unit> 
</persistence>

Minha classe com a inserção é a seguinte:

//TestaInsereProduto.java 
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

import entities.Produto;

public class TestaInsereProduto {  
	public static void main(String[] args) { 
		
		
		EntityManagerFactory factory = Persistence.createEntityManagerFactory("lojavirtual"); 
		System.out.println("1");
		EntityManager em = factory.createEntityManager();  
		
		Produto p = new Produto(); 
		p.setNome("camiseta"); 
		p.setPreco(12.23);  
		
		em.getTransaction().begin();  
		em.persist(p);  
		em.getTransaction().commit(); 
		} 
	}

Gera esse erro aqui:

[color=red]Exception in thread “main” java.lang.NoClassDefFoundError: org/hibernate/MappingNotFoundException
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:124)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:48)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:32)
at testes.TestaInsereProduto.main(TestaInsereProduto.java:14)
Caused by: java.lang.ClassNotFoundException: org.hibernate.MappingNotFoundException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
… 4 more[/color]

Se alguém poder me ajudar eu agradeço.

wellingtonamaralleitao,

Não esta faltando fazer o o LOOKUP.

Como faço esse lookup? Estou iniciando em JPA.

Colega, qual servidor de aplicação, voce esta usando?

opa da uma lida no erro ai

java.lang.NoClassDefFoundError: org/hibernate/MappingNotFoundException 

colocou o jar do hibernate jpa ai ??? algo assim hibernate-jpa-2.0-api-1.0.0.Fina.jar

Apache Tomcat

[quote=Polverini]opa da uma lida no erro ai

java.lang.NoClassDefFoundError: org/hibernate/MappingNotFoundException 

colocou o jar do hibernate jpa ai ??? algo assim hibernate-jpa-2.0-api-1.0.0.Fina.jar [/quote]

Coloquei.

Pelo que to vendo o tomcat nao ta achando a classe informada, problema de lookup é quando usa JTA, que pelo PU que vc postou não tem JTA.

qual a versão do hibernate ? ta usando mapeamento via hbm.xml ?

To usando o Hibernate 3.0

Opa,beleza Wellington?

Olha pelo que eu vi,ta faltando a porta no endereço do banco,a sua linha atualmente no persistence.xml está assim:

tente assim:

3306 é a porta padrão,se estiver usando outra porta,substitua pela porta certa.

Olha,eu n mapeio minhas entidades no persistence.xml não,me refiro a essa linha:

Eu faço da seguinte forma,vou até as propriedades no projeto dentro do eclipse(só clicar no projeto e depois alt+enter),depois disso vc clica em Java Persistence ou JPA,depois marque a opção Discover annotated classes automatically,mas para que você veja o menu Java Persistence,é necessário ir antes em Project Facets e marcar o checkbox do JPA,dessa forma vc pode retirar as linhas de mapeamento de Entidade do arquivo persistence.xml
Abraço!

Alencar valeu aí pela ajuda, mas agora está dando outro erro kkkkk

No Persistence provider for EntityManager named lojavirtual

Sendo que já criei no banco o database lojavirtual.

seu persistence.xml está no diretório src/META-INF ?
Poste o nome de todos os jars que estão no seu projeto,pode estar faltando alguma dependência.

[quote=AlencarCanton]seu persistence.xml está no diretório src/META-INF ?
Poste o nome de todos os jars que estão no seu projeto,pode estar faltando alguma dependência.[/quote]

[img]

[/img]


O jar que contém a classe HibernatePersistence é o hibernate-entitymanager.jar,pode fazer o download dele aqui:
http://www.java2s.com/Code/Jar/h/Downloadhibernateentitymanagerjar.htm
colocar no projeto e tentar.

Além disso,vc tá usando o tomcat,ele não faz o controle das transações pra vc(não provê transação automática),então coloque o valor “RESOURCE_LOCAL” para a propriedade “transaction-type” na persistence unit.
Dessa forma:

<persistence-unit name="lojavirtual" transaction-type="RESOURCE_LOCAL">

abraço!

Pô cara valeu mesmo aí a força mas ainda não deu certo :\ Mas tipo antes ele não estava nem indo para a main agora tá fazendo o primeiro print que coloquei pra testar mas não chega no segundo está parando nessa linha aqui:

EntityManagerFactory factory = Persistence.createEntityManagerFactory("lojavirtual");  

confere se o persistence.xml está nos diretórios:

src/META-INF e WEB-INF\classes\META-INF(esse segundo dentro da pasta do tomcat SEU_TOMCAT/webapps/SEU_PROJETO/)

Ah cara agora que estou percebendo que fiz uma certa confusão no começo do post, deu a entender que a aplicação era web, mas não, é um simples desktop mesmo o persistence.xml está no src/META-INF sim, mas não existe WEB-INF na hierarquia de diretórios.

Wellington,procure outro tutorial e reescreva seu persistence.xml todo,ok?
se não der certo,poste aqui de novo o erro e vamos tentar outra estratégia.
abraço!

Alencar obrigado pela ajuda vou dar uma olhada em outros tutoriais sim vlw!

Weligton, você está mapeando a classe Produto com as anotações do JPA?