使用Hibernate时出现以上错误,在Java Project中运行无误,但是来到Dynamic Web Project中却出现了如下错误:
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoClassDefFoundError: org/hibernate/Session cn.itworks.J2EE.dao.impl.daoImpl.getPersonit(daoImpl.java:18) cn.itworks.J2EE.service.ShowPersonsServlet.doGet(ShowPersonsServlet.java:40) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
java.lang.ClassNotFoundException: org.hibernate.Session org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233) java.lang.ClassLoader.loadClassInternal(Unknown Source) cn.itworks.J2EE.dao.impl.daoImpl.getPersonit(daoImpl.java:18) cn.itworks.J2EE.service.ShowPersonsServlet.doGet(ShowPersonsServlet.java:40) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
这个问题奇怪的地方就是Hibernate.jar这个包明明是已经加到自定义的库中了,但是就是显示没办法找到这个类,这到底是怎么回事呢?该怎样解决这个问题呢?
解决方法:
把自定义的jar包全部都移到我们自己开发的Web应用的web-inf/lib目录下,记住是所有的Jar包。
转自:java.lang.ClassNotFoundException: org.hibernate.Session
略有改动。