Java程序运行异常,望牛人指点

2019-03-25 13:41|来源: 网路

运行环境: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里从新部署一遍就好了。

相关问答

更多
  • 版主的是一种方法。这个适用在图片表格为基础的编程中。还有一种常用方法,在paint方法中调用draw方法来画出图象,这个方法速度快,技术要求比较高,不知你的程序用那种方法。不管那种方法,都可以现实你的功能。
  • 首先从一个程序员的角度给你点建议,一个程序员的精神压力很大,而且睡眠时间比较短,一连就是好几天除了吃饭睡觉,就是写程序。基础的话无非就是看你的逻辑思维能力,具体体现就是网上一般都有那种测试题,还有就是虽然JAVA这门语音比较容易上手,那是相对于其他难的语言而言的。如果没有语言基础,建议你前期最好把时间花在书和视频上,如果有条件最好上个高强度的培训班,上之前最好去试听下,推荐下一班的培训机构都很不咋的,对NIIT这个印度在中国办的培训机构有所了解,北大青鸟只能算是最后才考虑的。 好了,给你推荐几本基础的书,J ...
  • 比如说保存为"D:\java\test.java",然后转换目录到那里"cd D:\java",编译这个.java文件"javac test.java"这个javac的命令一定要记住,这是jdk里面最为常用的之一,是个java的编译器,具体参数你自己研究吧,很多,配合使用会得到意想不到的结果。这时候应该在"D:\java\"目录下面生成了一个test.class文件,这个就是一个二进制文件,就像windows下面常见的exe文件一样,只不过这个二进制文件是java虚拟机的(具体java的运行机制书上都会讲, ...
  • 如果你是0基础,不建议独自自学,最好找人带,因为在编程过程中出现问题是很多的,对于初学者来说,可能很简单的一个问题都会卡你十天半月的,所以最不济你也应该有一个可以咨询的朋友。 说到独立制作APP,你是要走iOS还是Android呢?两个方向是截然不同的,做项目都是属于高级编程,想要有独立带队制作出合格的软件,你的编程水平至少应该要有中级程序员的程度。如果有入门左右的基础,那就直接去做项目,缺什么就学什么,做几个项目下来,基本就可以了,当然这个时间是没法控制的。如果你是初学,至少要学到入门的程度,才有去慢慢摸 ...
  • //在连连看中,在合适的条件下,点到两个相同的图形时,这两个图形会消失,相当于删除这两个图形 //删除方法 private void delete(Point p1,final Point p2 , boolean bDelete){ //删除位置坐标列表的声明和实例化 ArrayList points=new ArrayList(); //当两个图形之间可直线连接时 if(corner1==null){ //将第一个图形加入删除列表 points.add(p1); //将第二个 ...