Problemas persistencia no Hibernante

Olá, pessoal!

Já tentei e corrigir ainda não encontrei para resolver essa problemas… veja em baixo… acho deve problemas na hibernante.cfg.xml…

mensagem de erro

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Erro: Unknown entity: Persistencia.Cadastro
org.hibernate.MappingException: Unknown entity: Persistencia.Cadastro
	at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:580)
	at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1365)
	at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:121)
	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
	at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:56)
	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
	at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:50)
	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
	at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:562)
	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:550)
	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:546)
	at DAO.CadastroDAO.incluirCadastro(CadastroDAO.java:26)
	at Controlador.ServletCadastro.doGet(ServletCadastro.java:28)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)

DAO

public class CadastroDAO {
	
	public void incluirCadastro(Cadastro cad){
		SessionFactory sf =(new AnnotationConfiguration().configure("/DAO/hibernate.cfg.xml")
				.buildSessionFactory());
		
		Session sessao = sf.openSession();
		
		Transaction tx = null;
		
		
		try {
			tx = sessao.beginTransaction();
			
			sessao.save(cad);
			
			tx.commit();
		} catch (HibernateException e) {
			tx.rollback();
			System.err.println("Erro: "+e.getMessage());
			e.printStackTrace();
		} finally{
			sessao.close();
		}
		
	}

}

Classe Cadastro

@Entity
public class Cadastro {
	@Id
	@GeneratedValue
	private int id;
	@Column(name="n0me")
	private String nome;
	@Column(name="email")
	private String email;
	@Column(name="idade")
	private int idade;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public int getIdade() {
		return idade;
	}
	public void setIdade(int idade) {
		this.idade = idade;
	}
}

ServletCadastro

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	
		Cadastro cad = new Cadastro();
		
		cad.setNome("Jeison");
		cad.setEmail("jsnpereira@gmail.com");
		cad.setIdade(28);
		
		CadastroDAO dao = new CadastroDAO();
		
		dao.incluirCadastro(cad);
		
			
	}

Vejamos que ocorreu esse tipo problemas que nunca vi antes. espero que vc em ajude para resolver essa situação. Obrigado!

Olá, sim… Falta um Persistencia.Cadastro no teu hibernante.cfg.xml… verifique um exemplo semelhante em http://blog.balmer.net.br/2011/04/14/persistir-um-java-bean-no-mysql-usando-jpa/

Abraço

Paulo Roberto Balmer

Pelo que me parece não á o mapeamento da classe no xml.

Posta o xml ai…

Veja ai arquivo XML que eu configurei… veja em baixo.

<?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>
		<property name="hibernate.dialect">
			org.hibernate.dialect.MySQLDialect
		</property>

		
		<property name="hibernate.connection.driver_class">
			com.mysql.jdbc.Driver
		</property>
		
		
		<property name="hibernate.connection.url">
			jdbc:mysql://localhost/testehibernate
		</property>
		
		<property name="hibernate.connection.username">root</property>
		<property name="hibernate.connection.password"></property>
		
		
		<property name="hibernate.show_sql">true</property>
		
		<property name="hibernate.connection.autocommit">true</property>
		
		
		<property name="hibernate.hbm2ddl.auto">create</property>
		  
	  
		
		<mapping class="Persistencia.Cadastro"/>
	
			
		 		
    </session-factory>
</hibernate-configuration>

Espero que me ajudem a corrigir essa configuração… obrigado!

Olá, pessoal!

Tem mais alguma detalhe que estou pesquisando… qual é tipo de erro esse?

lorg.hibernate.MappingException: Unknown entity: Persistencia.Cadastro

Já conferi tudo os drivers está corretamente… também conferi tudo anotação está tudo certinho. mas teste de execução ainda aparecendo do erro… Qual processo esse tipo de erro?

Aguardo ao retorno… obrigado!

Vê o teu import da annotation Entity do tua classe Cadastro.

Deve estar como import do hibernate, tem que ser o import da javax.persistence

Segue link de um cara que teve o mesmo problema que o seu e resolveu

http://www.guj.com.br/java/230238-hibernate---unknown-entity-resolvido

[quote=javablue]Vê o teu import da annotation Entity do tua classe Cadastro.

Deve estar como import do hibernate, tem que ser o import da javax.persistence

Segue link de um cara que teve o mesmo problema que o seu e resolveu

http://www.guj.com.br/java/230238-hibernate---unknown-entity-resolvido
[/quote]

Acabei de alterar de importação… muito obrigado pela ajuda… agora minha vez que aprendi pelo erro de compilação.
Fiz a alteração da importação

removido: import org.hibernate.annotations.Entity;
incluso: import javax.persistence.Entity;

Agora acabara de funcionar… valeu!!!