configuraÇao hibernate

12 respostas
J

SOU INICIANTE E ESTOU TENTANDO CONFIGURAR O HIBERNATE NO ECLIPSE MAIS NAO ESTOU CONSEGUINDO E ESTA APARECENDO O SEGUINTE ERRO

SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread “main” Deu pau! Manolo!
org.hibernate.MappingException: An AnnotationConfiguration instance is required to use
java.lang.NullPointerException
at Conecta.main(Conecta.java:17)

12 Respostas

lele_vader

Mostra a sua main.

Como você instanciou o hibernate ?

J

fisso uma classe conecta

import org.hibernate.Session;
import com.util.HibernateUtil;

public class Conecta {

public static void main(String[] args) {

Session sessao = null;

try{

sessao = HibernateUtil.getSession().openSession();

System.out.println(conectou jeffersonCarlos);

}finally{

sessao.close();

System.out.println(facho aplicao jeffersonCarlos);
}

}

}

uma classe hibernateUtil

package com.util;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtil {

private static final SessionFactory session = buildSessionFactory();

private static SessionFactory buildSessionFactory() {
	try {
		Configuration cfg =  new Configuration();
		cfg.configure("hibernate.cfg.xml");
		return cfg.buildSessionFactory();
	} catch (Throwable e) {
		System.out.println("Deu pau! Manolo!\n " + e );
		throw new ExceptionInInitializerError();
	}
}

public static SessionFactory getSession() {
	return session;
}

}

uma classe cliente

package com.modelo;

import java.util.Date;

import javax.persistence.Column;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import <a href="http://javax.persistence.Id">javax.persistence.Id</a>;

import javax.persistence.Table;
@Entity

@Table(name = cliente)

public class Cliente {
@Id
@GeneratedValue
private Integer id;
private String cpf;
private String email;
private String endereco;
private String nome;
@Column(name = "data_cadastro")
private Date dataCadastro;
private float renda;

public Integer getId() {
	return id;
}

public void setId(Integer id) {
	this.id = id;
}

public String getCpf() {
	return cpf;
}

public void setCpf(String cpf) {
	this.cpf = cpf;
}

public String getEmail() {
	return email;
}

public void setEmail(String email) {
	this.email = email;
}

public String getEndereco() {
	return endereco;
}

public void setEndereco(String endereco) {
	this.endereco = endereco;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public Date getDataCadastro() {
	return dataCadastro;
}

public void setDataCadastro(Date dataCadastro) {
	this.dataCadastro = dataCadastro;
}

public float getRenda() {
	return renda;
}

public void setRenda(float renda) {
	this.renda = renda;
}

}

criei um arquivo hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?> org.postgresql.Driver najla jdbc:postgresql://localhost/testa/ postgres org.hibernate.dialect.PostgreSQLDialect update

fisso o mapeamento no hibernate com a classe cliente entrei no session factory - properties - hibernate -hbm2ddlAuto e o coloquei update
adicionei uma libary com o nome de hibernate e adicionei os .jar dele, ai quando vou testar a classe main o projeto deveria executar com sucesso e criar as tabelas no banco mais deu o seguinte erro

SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Deu pau! Manolo!
org.hibernate.MappingException: An AnnotationConfiguration instance is required to use
Exception in thread “main” java.lang.NullPointerException
at Conecta.main(Conecta.java:17)

lele_vader

Qual a sua versão do hibernate.

Se anterior a 4 você deve instanciar a Configuration assim

Configuration cfg = new AnnotationConfiguration(); f

J

minha versao do hibernate e a 4.0.1 coloquei como vc me disse mais da outro erro

package com.util;

import org.hibernate.SessionFactory;

import org.hibernate.cfg.AnnotationConfiguration;

import org.hibernate.cfg.Configuration;

public class HibernateUtil {

private static final SessionFactory session = buildSessionFactory();

private static SessionFactory buildSessionFactory() {
	try {
		Configuration cfg = new AnnotationConfiguration(); 
		//Configuration cfg =  new Configuration();
		cfg.configure("hibernate.cfg.xml");
		return cfg.buildSessionFactory();
	} catch (Throwable e) {
		System.out.println("Deu pau! Manolo!\n " + e );
		throw new ExceptionInInitializerError();
	}
}

public static SessionFactory getSession() {
	return session;
}

}

e da o erro

Exception in thread “main” java.lang.NullPointerException
at Conecta.main(Conecta.java:17)
Deu pau! Manolo!
java.lang.IncompatibleClassChangeError: Implementing class

POSSO TE MANDAR POR MAIL MEU PROJETO PARA VC VE ME DE SEU MAIL ME AJUDA

J

mandei para seu mail [email removido]; com o assunto ajudaHibernate da uma olhada valeu

lele_vader

Na versão 4 que eu saiba você já fez do jeito correto.
É Configuration config = new Configuration(); mesmo.

Pior que você colocou o mapping class no hibernate.

O fogo que nunca usei o hibernate 4, instanciando a configuração.
Estou mexendo com projeto web e o servidor já faz isso de configurar a persistência.

J

Segui um exemplo que peguei na net vc tem um tutorial que explica de maneira fácil de usar o hibernetê

lele_vader

Eu tenho um tutorial em casa.
Depois te passo.
Mas rodou ?
Colocando AnnotationConfiguration dá qual erro ?

aprendizweb

Segundo erro de sua primeira postagem vc precisa tambem adicionar um pacote

Este: slf4j-api-1.6.1.jar
e veja se esses dois também estão na sua pasta lib.
log4j-1.2.16.jar
slf4j-log4j12-1.6.1.jar

J

estou usando os seguintes .jar e Configuration config = new Configuration(); em meu hibernateutil -
antlr-2.7.6.jar
asm.jar
asm-attrs.jar
c3p0-0.9.1.2.jar
cglib-2.1.3.jar
cglib-nodep-2.1_3.jar
commons-collections-2.1.1.jar
commons-logging-1.0.4.jar
dom4j-1.6.1.jar
hibernate3.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
javassist.jar jta.jar log4j-api-1.6.1.jar
postgres-9.0-802.jdbc4.jar slf4j-api-1.6.1.jar
slf4j-log4j12-1.6.1.jar

e da o seguinte erro
SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread “main” Deu pau! Manolo!
org.hibernate.MappingException: An AnnotationConfiguration instance is required to use
java.lang.NullPointerException
at Conecta.main(Conecta.java:17)

aprendizweb

baixe o slf4j-api-1.7.0.jar e adicione ao projeto.
http://www.slf4j.org/download.html

esse mesmo erro foi resolvido aqui: http://www.guj.com.br/java/282367-hibernate---erroresolvido/2

J

VALEU CARA PELA AJUDA O QUE ESTAVA ERRADO ERA Configuration config = new Configuration(); QUE EU ESTAVA USANDO PARA O HIBERNATE ERRADO

Criado 12 de setembro de 2012
Ultima resposta 18 de set. de 2012
Respostas 12
Participantes 3