运行环境:Eclipse SDK Version: 3.3.1,tomcat 6.0.16
运行时提示如下错误:
2010-1-13 11:03:28 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jbpm-process-upload-servet threw exception
java.lang.ClassNotFoundException: org.dom4j.DocumentException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at org.jbpm.db.hibernate.HibernateHelper.createConfiguration(HibernateHelper.java:74)
at org.jbpm.persistence.db.DbPersistenceServiceFactory.getConfiguration(DbPersistenceServiceFactory.java:69)
at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:95)
at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:99)
at org.jbpm.persistence.db.DbPersistenceService.getGraphSession(DbPersistenceService.java:345)
at org.jbpm.JbpmContext.getGraphSession(JbpmContext.java:571)
at org.jbpm.JbpmContext.deployProcessDefinition(JbpmContext.java:173)
at org.jbpm.web.ProcessUploadServlet.handleRequest(ProcessUploadServlet.java:93)
at org.jbpm.web.ProcessUploadServlet.service(ProcessUploadServlet.java:58)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
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: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(Unknown Source)
我在引用的libraries里面也能找到org.dom4j.DocumentException这个类,不知道怎么办
我觉得是包冲突 从你调用的地方看看真正加载的包是不是和dom4j有冲突了
java.lang.ClassNotFoundException: org.dom4j.DocumentException
少了dom4j的jar包或版本不对
一般这种java.lang.ClassNotFoundException: 的错误都是由于没有找到class文件,也就是说没有找到装载这个class文件的JAR包,有的时候还会报没有找到方法的错误,这种错误就可能是有很多JAR包里都有同名类,因为虚拟机加载的时候,对于一个类加载器,全路径名相同的类只加载一次。
你把dom4j的JAR加进去就好了。
你所找到的 那是个抛出异常 就是抛出的DocumentException异常
你好好看看dom4j包
没有找到java.lang.ClassNotFoundException: org.dom4j.DocumentException 类
看看是不是包冲突了
的确是缺少dom4j的jar包,去下面的官网下载
[url]http://www.dom4j.org/[/url]
你的JAR包是最新版本的么? 或者你的工程里在,别的JAR包引入过程中,是否已经加载了别的JAR包,你在运行的时候 在eclipse里 把最近的dom4j放到 加载顺序的第一个 你试验下
我觉得是 不过确实没有遇上过相同的情况 你查查吧 这个就好像在websphere中部署xfire时 会出现由于jdom冲突导致一系列ClassNotFoundException
我在引用的libraries里面也能找到org.dom4j.DocumentException这个类
这个类是属于在哪个jar包中
你的JAR能不能被找到,这是一个问题。减产下你JAR包放的位置
你所说的能够被加载到 是指JAR包能被读取到么? 如果是被加载到,就不会报错了 现在是类加载器去找,但是找不到这个class文件才会报这个错的。你把JAR仍到tomcat下么?