Java.lang.NoClassDefFoundError: org/dom4j/DocumentException

5 respostas
A

tenho esse codigo:

package newhibteste;

import org.hibernate.SessionFactory;
import org.hibernate.Hibernate;
import org.hibernate.*;
import org.hibernate.cfg.Configuration;
import newhibteste.TbCidade;
import java.sql.SQLException;


public class TbCidadeDao {

    private SessionFactory sf = new Configuration().configure("/hibernate.cfg.xml").buildSessionFactory();

    private Session session = sf.openSession(); //Abre sessão
    private Transaction tx = session.beginTransaction(); //Cria transação

    public TbCidadeDao() {}

    public TbCidadeDao(String nome, Integer idCountry) {

        Session session = sf.openSession(); //Abre sessão
        Transaction tx = session.beginTransaction(); //Cria transação

        //Cria objeto Aluno
        TbCidade tbCidade = new TbCidade();

        tbCidade.setName(nome);
        tbCidade.setIdCountry(idCountry);

        session.save(tbCidade); //Realiza persistência
        tx.commit(); //Fecha transação
        session.close(); //Fecha sessão

    }

    public void findAll() {
        //Busca objeto aluno da base de dados com chave primária = 1
        TbCidade tbCidade = (TbCidade) session.get(TbCidade.class, 14);
        //Atualiza informação de matrícula.
        System.out.println("tbCidade.getIdCidade()"+tbCidade.getIdCidade());
        System.out.println("tbCidade.getName()"+tbCidade.getName());
        System.out.println("tbCidade.getIdCountry()"+tbCidade.getIdCountry());
        //Como o identificador do objeto aluno é diferente de 0,
        //a sua matrícula é atualizada já que foi alterada
        session.saveOrUpdate(tbCidade);
        tx.commit();
        session.close();

    }

}

E dá o seguinte erro:

Exception in thread "main" java.lang.NoClassDefFoundError: org/dom4j/DocumentException
at newhibteste.TbCidadeDao.(TbCidadeDao.java:13)
at newhibteste.Untitled1.main(Untitled1.java:10)

Help por favor...abraços

5 Respostas

D

Olá,

verifique se a classe realmente existe no ClassPath da sua apliacação…
provavelmente é isso.

H

clique com o botao direito no seu projeto e vai em propertys, verifique se a pasta src está no seu classpath

C

oi, alquem consequil solução?
estou com o mesmo problema, minha pasta src esta
no ClassPath e os jar tambem mas recebo o erro:

java.lang.NoClassDefFoundError: org/dom4j/DocumentException

at beans.persistencia.HibernateUtil.(HibernateUtil.java:8)

at beans.persistencia.AtendenteDao.buscarPorLogin(AtendenteDao.java:23)

at managers.LoginAtendente.fazerLogin(LoginAtendente.java:40)

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:597)

at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)

at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:61)

at javax.faces.component.UICommand.broadcast(UICommand.java:109)

at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)

at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)

at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)

at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

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:175)

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:844)

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:619)

meu código em HibernateUtil.java é esse:

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.cfg.Configuration;

public class HibernateUtil {
private static SessionFactory factory = new Configuration().configure("…/hibernate.cfg.xml").buildSessionFactory();

public static Session getSession(){
	return factory.openSession();		
}

obrigado por ajuda

S

Opa, tive o mesmo problema mesmo erro…
o seguinte, uso o eclipse, e tem diversos .jar que o hibernate utiliza um deles se chama: dom4j-1.6.1.jar (no caso esse é o que to usando)

vá no seu projeto clique em propetys >> build path >> libraries >> add jar

adicione o jar e pronto … ele vai achar a classe dentro do .jar :twisted:

D

shara:
Opa, tive o mesmo problema mesmo erro…
o seguinte, uso o eclipse, e tem diversos .jar que o hibernate utiliza um deles se chama: dom4j-1.6.1.jar (no caso esse é o que to usando)

vá no seu projeto clique em propetys >> build path >> libraries >> add jar

adicione o jar e pronto … ele vai achar a classe dentro do .jar :twisted:

no meu caso, estava fazendo um web service com hibernate… tentei isso ai e não rolou…
só funcionou depois que eu joguei as libs diretamente dentro da “lib” do servidor de aplicação (tom cat)…

Criado 26 de janeiro de 2007
Ultima resposta 13 de set. de 2012
Respostas 5
Participantes 6