Boa tarde pessoal,
estou tentando fazer o "Hello Word" no JPA com Hibernate mas estou tendo problemas.
criei minha entity
[code]@Entity
@Table(name = "contato")
public class Contato {
@Id
@Column(name = "id_contato")
private int id;
@Column(name = "nm_contato")
private String nome;
@Column(name = "email_contato")
private String email;
…gets e sets[/code]
Criei também minha classe BussinesObject que vai ser minha entityManager
[code]public class BussinesObject {
public EntityManagerFactory entityManagerFactory = Persistence
.createEntityManagerFactory("PU");
public EntityManager entityManager = entityManagerFactory
.createEntityManager();
public void inserir(Contato contato) {
entityManager.getTransaction().begin();
entityManager.persist(contato);
entityManager.getTransaction().commit();
entityManager.close();
}
}[/code]
Meu persistence.xml no diretório META-INF:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.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_1_0.xsd">
<persistence-unit name="PU" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>br.com.contato.domain.Contato</class>
<properties>
<property name="hibernate.connection.driver_class" value="oracle.jdbc.Driver.OracleDriver" />
<property name="hibernate.connection.username" value="eduardomarquesm" />
<property name="hibernate.connection.password" value="bird89du" />
<property name="hibernate.connection.url" value="jdbc:oracle:thin:@127.0.0.1:1521:XE" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.query.substitutions" value="true=S, false=N" />
</properties>
</persistence-unit>
</persistence>
Eu chamo minha classe main
[code]public class Main {
public static void main(String[] args) {
Contato contato = new Contato();
contato.setId(1);
contato.setNome(“Eduardo”);
contato.setEmail("eduaro@aoashdfçlas.com.br");
BussinesObject bussinesObject = new BussinesObject();
bussinesObject.inserir(contato);
}
}[/code]
Rodando no servidor e não acontece nada, quando eu chamo rodando como aplicação dá o seguinte erro:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder
at org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:223)
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:120)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:269)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:255)
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:151)
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 br.com.transitbrasil.contato.bo.BussinesObject.<init>(BussinesObject.java:12)
at br.com.transitbrasil.contato.domain.Main.main(Main.java:11)
Por favor, estou procurando na Net e ainda não achei nenhum material passo a passo.
Obrigado
Eduardo Marques