Hibernate.cfg.xml

10 respostas
B

Galera, to com um problema, comprei o livro do Bauer, Java Persistence com Hibernate. Criei a classe Hibernateutil e fiz esse métodos

public class HibernateUtil {
    
    private static SessionFactory sessionfactory;
    
    static {
        try {
            sessionfactory = new Configuration().configure("/banco/hibernate.cfg.xml").buildSessionFactory();
        } catch (Throwable t){
              throw new ExceptionInInitializerError(t);
        }
    }
    
    public static SessionFactory getSessionFactory(){
        return sessionfactory;
    }
    
    public static void shutdown(){
        getSessionFactory().close();
    }
}
Na minha Main tenho apenas
HibernateUtil.getSessionFactory();
  HibernateUtil.shutdown();
Quando mando rodar, acontece esse erro
Exception in thread "main" java.lang.ExceptionInInitializerError
        at banco.HibernateUtil.<clinit>(HibernateUtil.java:30)
        at proxy.Main.main(Main.java:30)
Caused by: java.lang.ExceptionInInitializerError
        at banco.HibernateUtil.<clinit>(HibernateUtil.java:28)
        ... 1 more
Caused by: org.apache.commons.logging.LogConfigurationException: java.lang.reflect.InvocationTargetException
        at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
        at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)

No livro diz que o arquivo hibernate.cfg.xml, não precisa estar inserido no método configure, mas com ou sem a string no método configure dá esse erro.
O arquivo xml está na mesma pasta do HibernateUtil

Alguém sabe oque pode ser??

10 Respostas

P

o problema pode estar no caminho do comando Configuration().configure("/banco/hibernate.cfg.xml").buildSessionFactory(); tente deixar apenas hibernate.cfg.xml ou verifique se esse arquivo tem que ficar realmente nessa pasta

flw

B

Realmente tinha uns probleminhas ali no endereço do arquivo. Valeu pela ajuda.

J

berdamc, estou com o memso problema…
o que tinha de errado no caminho?

G

jback:
berdamc, estou com o memso problema…
o que tinha de errado no caminho?

O arquivo hibernate.cfg.xml deve estar no classpath para que o Hibernate o encontre sem problemas. Caso coloque em outro lugar, terá que especificar o mesmo no código.

B

me passem o email ai quem tiver com d
úvida q eu mando a foto da tela pra ver como que ficou o netbeans.

N consigui por a foto aqui

B

Galera, tem alguma maneira de fazer com que o arquivo hibernate.cfg.xml fique fora da aplicação java, dessa maneira, quando eu distribuísse o projeto, cada administrador de servidor poderia deixar a configuração ao seu gosto.

Algu;em tem alguma idéia de como isto pode ser implementado???

valeu

S

O arquivo de configuração pode estar em qualquer pasta no seu computador, desde de ele esteja no classpath da aplicação ou você passe o caminho correto para o arquivo de configuração.

P

Amigos,

estou com um problema similar, o erro que aparece é o:

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
	at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:151)
	at view.Tipo.main(Tipo.java:25)

O codigo que estou usando apenas para testar é o:

Configuration cfg = new Configuration().configure("model/hibernate.cfg.xml");
		
		
		SessionFactory sf = cfg.buildSessionFactory();
		Session session = sf.openSession();
		
		session.close();

Eu tenho que por o hibernate.cfg.xml dentro do web-inf é isso? Na linha Configuration().configure(“model/hibernate.cfg.xml”); eu deixo o configure em branco?

P

Pessoal,

Depois de tanto tentar, tentar e bater a cabeça, consegui fazer o hibernate funcionar com annotations. So que ainda aparece o seguinte erro pra mim

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.

Mas ta funcionando! Vocês poderiam postar a lista de jars que estão usando na aplicação de vcs? Eu tive muito problema com jars e versões de jars, talves esse erro seja por isso tbm.

obrigado.

P

aaaaaaa muleque!!!

Depois de 3 dias sem durmir direito, o bixo esta funfado prefeitamente.

Esse erro é corrigido criando o arquivo “log4j.properties”. O bixo ta magaiver agora oh! Finalmente to vendo que vou conseguir migrar do topLink para o hibernate.

abraços.

Criado 1 de abril de 2008
Ultima resposta 29 de out. de 2008
Respostas 10
Participantes 6