Dae galera… esse é meu primeiro post aqui no GUJ
Seguinte, estou fazendo uma aplicação web com o struts 2 e hibernate annotation e to com um problema:
org.hibernate.MappingException: Unknown entity
Passei o dia inteiro atrás da resolução do problema: google, aqui no GUJ, em outros fóruns, mas nada!!
Vejam meu hibernate.cfg.xml
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">org.postgresql.Driver </property>
<property name="connection.url">jdbc:postgresql://localhost:5840/teste</property>
<property name="connection.username">postgres</property>
<property name="connection.password">postgres</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">1</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.PostgreSQLDialect </property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<mapping class="br.com.erp.dominio.OpeTarefa" />
</session-factory>
</hibernate-configuration>
A classe a persistir
package br.com.erp.dominio;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import org.hibernate.annotations.Entity;
@Entity
@Table(name = "ope_tarefa")
public class OpeTarefa implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long idtarefa;
private String dsTituloTarefa;
private Date dtCriacaoTarefa;
public OpeTarefa() {
}
public Long getIdtarefa() {
return idtarefa;
}
public void setIdtarefa(Long idtarefa) {
this.idtarefa = idtarefa;
}
public String getDsTituloTarefa() {
return dsTituloTarefa;
}
public void setDsTituloTarefa(String dsTituloTarefa) {
this.dsTituloTarefa = dsTituloTarefa;
}
public Date getDtCriacaoTarefa() {
return dtCriacaoTarefa;
}
public void setDtCriacaoTarefa(Date dtCriacaoTarefa) {
this.dtCriacaoTarefa = dtCriacaoTarefa;
}
}
o DAO
package br.com.erp.operacional.dao;
import org.hibernate.Session;
import br.com.erp.conexao.HibernateUtil;
import br.com.erp.dominio.OpeTarefa;
public class OpeTarefaDAO {
public OpeTarefaDAO() {
}
public void salvar(OpeTarefa cli) {
Session session = HibernateUtil.getSession();
session.beginTransaction();
session.save(cli);
session.getTransaction().commit();
}
}
e o HibernateUtil
package br.com.erp.conexao;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
sessionFactory = new AnnotationConfiguration().configure()
.buildSessionFactory();
} catch (Throwable ex) {
// Log exception!
throw new ExceptionInInitializerError(ex);
}
}
public static Session getSession() throws HibernateException {
return sessionFactory.openSession();
}
}
O erro que é reportado:
Messages: Unknown entity: br.com.erp.dominio.OpeTarefa
File: org/hibernate/impl/SessionFactoryImpl.java
Line number: 547
Stacktraces
org.hibernate.MappingException: Unknown entity: br.com.erp.dominio.OpeTarefa
org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:547)
org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1331)
org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:96)
org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:175)
org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:537)
org.hibernate.impl.SessionImpl.save(SessionImpl.java:525)
org.hibernate.impl.SessionImpl.save(SessionImpl.java:521)
br.com.erp.operacional.dao.OpeTarefaDAO.salvar(OpeTarefaDAO.java:18)
Se algué puder me ajudar, agradeço muito!!!
Felipe