Hibernate Utils无法在JSP页面中运行

时间:2012-02-22 20:42:27

标签: java hibernate jsp tomcat

这是我第一次使用Hibernate并且能够在本地计算机上运行所有内容,但是当我将我的网站部署到我教授的tomcat Web服务器时,我收到以下错误消息。我在UsersHelper构造函数中所做的就是从HibernateUtils中的SessionFactory获取会话。

以下是HibernateUtil:http://www.copypastecode.com/173998/

和UsersHelper:http://www.copypastecode.com/174002/

org.apache.jasper.JasperException:在第35行处理JSP页面/users.jsp时发生异常

32:             try{
33:                  
34:                 
35:                 UsersHelper u = new UsersHelper();
36:                 
37:                 List<Users> userList = u.getAllUsers();
38:                 

堆栈跟踪:

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

根本原因

javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class org.myworkspace.hbconnect.HibernateUtil
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
    org.apache.jsp.users_jsp._jspService(users_jsp.java:281)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

根本原因

java.lang.NoClassDefFoundError: Could not initialize class org.myworkspace.hbconnect.HibernateUtil
    org.myworkspace.hbconnect.UsersHelper.<init>(UsersHelper.java:19)
    org.apache.jsp.users_jsp._jspService(users_jsp.java:241)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

1 个答案:

答案 0 :(得分:0)

java.lang.NoClassDefFoundError: Could not initialize class org.myworkspace.hbconnect.HibernateUtil

运行时类路径中缺少所提到的类。它必须在运行时类路径中作为独立的类文件( .class)或打包在JAR文件( .jar)中。

默认情况下,运行时类路径会覆盖webapp的myWebapp/WEB-INF/libmyWebapp/WEB-INF/classes文件夹。

任何第三方特定于网络应用的JAR文件都应放在myWebapp/WEB-INF/lib中。任何特定于webapp的类(servlet等)都应该放在myWebapp/WEB-INF/classes中。

检查部署时是否放置了正确的.class文件和.jar。 希望这会有所帮助。