Problemas com o Session do Hibernate

8 respostas
C
Alguem poderia ajudar-me com esse erro. Ele acontece quando eu faço
Session session = HibernateUtils.getSession();
na classe DAOImpl. O HibernateUtil.java
package br.com.teste.utils;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;

public class HibernateUtils {
	
	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();
    }

}
Log de Erro.
28/08/2008 16:07:12 com.sun.faces.application.ActionListenerImpl processAction SEVERE: java.lang.NoClassDefFoundError: org/hibernate/Session javax.faces.el.EvaluationException: java.lang.NoClassDefFoundError: org/hibernate/Session at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) at javax.faces.component.UICommand.broadcast(UICommand.java:387) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:458) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:763) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) 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:128) 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:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) Caused by: java.lang.NoClassDefFoundError: org/hibernate/Session at br.com.teste.model.dao.PessoaDaoImpl.inserir(PessoaDaoImpl.java:69) at br.com.teste.control.bo.PessoaBO.inserir(PessoaBO.java:18) at br.com.teste.control.service.PessoaServiceImpl.inserir(PessoaServiceImpl.java:33) at br.com.teste.control.PessoaDelegate.inserir(PessoaDelegate.java:23) at br.com.teste.view.mb.PessoaMB.inserir(PessoaMB.java:38) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.el.parser.AstValue.invoke(AstValue.java:172) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276) at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68) at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) ... 20 more 28/08/2008 16:07:12 com.sun.faces.lifecycle.InvokeApplicationPhase execute WARNING: #{pessoaMB.inserir}: java.lang.NoClassDefFoundError: org/hibernate/Session javax.faces.FacesException: #{pessoaMB.inserir}: java.lang.NoClassDefFoundError: org/hibernate/Session at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118) at javax.faces.component.UICommand.broadcast(UICommand.java:387) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:458) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:763) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) 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:128) 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:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) Caused by: javax.faces.el.EvaluationException: java.lang.NoClassDefFoundError: org/hibernate/Session at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) ... 19 more Caused by: java.lang.NoClassDefFoundError: org/hibernate/Session at br.com.teste.model.dao.PessoaDaoImpl.inserir(PessoaDaoImpl.java:69) at br.com.teste.control.bo.PessoaBO.inserir(PessoaBO.java:18) at br.com.teste.control.service.PessoaServiceImpl.inserir(PessoaServiceImpl.java:33) at br.com.teste.control.PessoaDelegate.inserir(PessoaDelegate.java:23) at br.com.teste.view.mb.PessoaMB.inserir(PessoaMB.java:38) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.el.parser.AstValue.invoke(AstValue.java:172) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276) at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68) at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) ... 20 more 28/08/2008 16:07:12 com.sun.faces.lifecycle.Phase doPhase SEVERE: JSF1054: (Phase ID: INVOKE_APPLICATION 5, View ID: /cadastrar.jsp) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@b80f1c] 28/08/2008 16:07:12 org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet Faces Servlet threw exception java.lang.NoClassDefFoundError: org/hibernate/Session at br.com.teste.model.dao.PessoaDaoImpl.inserir(PessoaDaoImpl.java:69) at br.com.teste.control.bo.PessoaBO.inserir(PessoaBO.java:18) at br.com.teste.control.service.PessoaServiceImpl.inserir(PessoaServiceImpl.java:33) at br.com.teste.control.PessoaDelegate.inserir(PessoaDelegate.java:23) at br.com.teste.view.mb.PessoaMB.inserir(PessoaMB.java:38) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.el.parser.AstValue.invoke(AstValue.java:172) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276) at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68) at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) at javax.faces.component.UICommand.broadcast(UICommand.java:387) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:458) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:763) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) 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:128) 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:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595)

Att,

Carlos (Guto) Rossi

8 Respostas

kaoe

Se me lembro bem o NoClassDefFoundError ocorre quando você tanta carregar uma classe por um classloader diferente do que carregou ela da primeira vez. Você está rodando isto onde, num servidor de aplicação? Parece ser problema de classpath.

A

É bem o que o kaoe falou, esta faltando o jar do Hibernate.

Ats,
Endrigo Antonini

RobsonFagundes

Ta faltando jar ai…
veja este post
http://www.guj.com.br/posts/list/98079.java
t+

C
Então, eu estou rodando a aplicação direto no Eclipse, com o servidor Tomcat 6.0, enquanto as jars, segue os que eu estou usando:

hibernate3.jar;

log4j.jar;

asm-attrs.jar

asm.jar;

c3p0-0.9-1.jar;

cglib-2.1.3.jar;

commons-collections-2.1.1.jar;

commons-logging-1.0.4.jar;

concurrent-1.3.2.jar;

dom4j.jar

ehcache.jar

javassist.jar

ant-antlr.jar;

e mais os hibernate-annotatios e os hibernate-EntityManager. Será que está faltando algum jar?
A

Aproveita que você ta dentro do Eclipse e faz:
Ctrl+Shift+T
e digita: org.hibernate.Session
Tem que aparecer algum Jar com essa classe… veja se esse jar esta no seu class path ou no class path do se WAR.

Ats,
Endrigo Antonini

RobsonFagundes

crossi
nao tenho bem certeza mais axo que faltam os:

ejb3-persistence.jar
commons-beanutils-1.7.0.jar
ant-junit-1.6.5.jar
ant-launcher-1.6.5.jar

axo q sao so estes mesmo, tenta ai
T+

C
está listando

Interfaces:

Session;

SessionFactory;

SessionFactoryAwareNode;

SessionFactoryImplementor;

SessionImplementor;

SessionStatistics;
Class:

SEssionExceptions

SessionFactoryHelper;

SessionFactoryObjectFactory;

SessionFactoryStub;

SessionImpl;

SessionStatisticsImpl;

são esses os listados.

C

Eu adicionei os jar do hibernate no lanch configuration do tomcat e agora está gerando a seguinte exceção:

eu devo estar esquecendo de fazer alguma coisinha babaca que está f#@#@* tudo!!!

Algum tem algum projeto de exemplo usando o JSF + Hibernate com annotations+ entites managers???

Criado 28 de agosto de 2008
Ultima resposta 29 de ago. de 2008
Respostas 8
Participantes 4