运行环境: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这个类,不知道怎么办
问题补充:
以上的回答应该都不是,因为我加载org.dom4j.jar(包含org.dom4j.DocumentException)和不加载它抛出的异常是一样的
问题补充:
请问6楼的意思是不是除了dom4j包外,其它包里可能已经有org.dom4j.DocumentException 类了,导致冲突
问题补充:
我确定dom4j是最新的,也能被加载到,因为我把相同目录下的别的引用包去了,会报相似的错误
问题补充:
附件中是我加载的包目录,我查过了这里面只有dom4j包里有org.dom4j.DocumentException 类,不知道别的地方还有没有可能包含org.dom4j.DocumentException 类
问题补充:
我的dom4j是放在Web App Libraries 下的,Web App Libraries 下的其他类包我去掉就会报类似的错误。刚把dom4j放到tomcat的类库下试了也不行
问题补充:
问题已解决,应该是包冲突,我把原来在tomcat下独立部署的东西全删了,在Eclipse里从新部署一遍就好了。