2011-02-28 73 views
0

我的项目有问题。我将我的所有库上传到Tomcat Lib文件夹,并发生错误。重定位JAVA库到Tomcat Lib文件夹后的问题

org.hibernate.HibernateException:在org.hibernate.cfg.AnnotationConfiguration.doConfigure在org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1494) /hibernate.cfg.xml :无法解析配置在org.hibernate.cfg在org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:69)(AnnotationConfiguration.java:990) 在org.hibernate.cfg.Configuration.configure(Configuration.java:1428) .OnnotationConfiguration.configure(AnnotationConfiguration.java:972) at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:69) at org.hibernate.cfg.Configuration.configure(Configuration.java :1414) 在org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:966) 在com.billing.util.HibernateUtil.getInitializedConfiguration(HibernateUtil.java:126) 在com.billing.util.HibernateUtil.getSession (HibernateUtil.java:132) 在com.billing.util.HibernateUtil.beginTransaction(HibernateUtil.java:153) 在dscv2.login.userCtrl.UserLogin.processRequest(UserLogin.java:62) 在dscv2.login.loginCtrlServlet .processRequest(loginCtrlServlet.java:48) at dscv2.login.loginCtrlServlet.doPost(loginCtrlServlet.java:121) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http .HttpServlet.service(HttpServlet.java:717) at org.ap ache.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) 在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 的组织。 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:298) at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:857) at org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java :489) at java.lang.Thread.run(Thread.java:636) 引起:org.dom4j.DocumentException:org.dom4j.DocumentFactory无法转换为org.dom4j.DocumentFactory嵌套异常:org.dom4j。 DocumentFactory无法转换为org.dom4j.DocumentFactory at org.dom4j.io.SAXReader.read(SAXReader.java:484) at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1484) ... 27更多

回答

4

你不应该把东西放在Tomcat/lib目录中,除非由下面的Mike Baranczak编写,JDBC驱动程序JAR。 (即使Tomcat 6.x及更高版本也是这样,过去也是这样,它们也会在您的WEB-INF/lib中。)

了解如何创建适当的WAR并将其部署到/ webapps目录。

+0

后台解释:您的类路径被多个不同版本的DOM4J JAR文件污染。解决方法的确不是篡改类库,而是在错误的地方使用库:) – BalusC 2011-02-28 03:21:50

+0

有些东西需要在Tomcat的lib目录中,例如使用容器管理的连接时的数据库驱动程序。但那些是例外。 – 2011-02-28 05:31:07

+0

谢谢你的更正,迈克尔。我已将它添加到我的答案中。 – duffymo 2011-02-28 10:31:48