Dae galera… estou quebrando um pouco a cabeça… pois leio que o Hibernate é uma implementação da JPA e tal… dae sigo os tutoriais da net… que dizem para baixar o hibernate3.jar, hibernate-annotations.jar e hibernate-entitymanager.jar…, só que quando vou utilizar as anotações da JPA… ele diz que não encontra os pacotes:
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
Dae dei uma procurada no site do hibernate e achei esse pacote mas falava sobre EJB3 e tal…
A pergunta é… o que mais eu tenho que baixar para poder usar a implementação hibernate para JPA…?? Não tem como usar JPA+Hibernate com Tomcat?? Vou precisar de um servidor de aplicação tipo um JBoss etc??
Quando eu faço testes usando o TopLink e olho dentro dos pacotes que ele contém… verifico que se encontra os pacotes acima citados… já no hibernate não!!
Os jars baixados foram:
hibernate-entitymanager.jar
lib/hibernate-annotations.jar
lib/hibernate-commons-annotations.jar
lib/jboss-archive-browsing.jar
hibernate3.jar
lib/antlr-2.7.6.jar
lib/asm-attrs.jar
lib/asm.jar
lib/c3p0-0.9.1.jar
lib/cglib-2.1.3.jar
lib/commons-collections-2.1.1.jar
lib/commons-logging-1.0.4.jar
lib/concurrent-1.3.2.jar
lib/dom4j-1.6.1.jar
lib/ehcache-1.2.3.jar
lib/javassist.jar
lib/log4j-1.2.11.jar
Abraço e aguardo respostas!!
Fiquem com Deus!!
Dae galera… pesquisando verifiquei que tem que adicionar mais estes dois jars…
ejb3-persistence.jar e jta.jar… seria isso mesmo??
Tentei rodar esse exemplo mas deu erro:
Erro:
Exception in thread "main" javax.persistence.PersistenceException: Unable to configure EntityManagerFactory
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:265)
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:125)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:51)
at GenerateUtil.main(GenerateUtil.java:23)
Caused by: org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="jpa_hibernate" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>br.home.user.entity.Usuario</class>
<properties>
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/jpa_hibernate"/>
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.connection.password" value="admin"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.hbm2ddl.auto" value="create"/>
</properties>
</persistence-unit>
</persistence>
Criei uma base de dados chamada de jpa_hibernate e a seguinte classe:
[code]import java.util.Properties;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
/**
*
-
@author Guitar
*/
public class GenerateUtil {
public static void main( String args[]) {
Properties cfg = new Properties();
cfg.setProperty("hibernate.hbm2ddl.auto", "create");
EntityManagerFactory emf = Persistence.createEntityManagerFactory("jpa_hibernate",cfg);
EntityManager em = emf.createEntityManager();
emf.close();
em.close();
}
}[/code]
Alguém teria alguma idéia do que esteja acontecendo?
bah galera… todo mundo fala que usa Hibernate e JPA e ninguem sabe se dar para usar com o Tomcat e que tipo de configuração tem que ser feita?
Onde se encontra o persistence.xml no projeto?
HibernateWithJPA\src\conf\persistence.xml
Eu deixei onde o proprio netbeans ja o coloca!!
Valeu!!