java.lang.ClassNotFoundException:org.hibernate.HibernateException

时间:2013-12-02 09:33:59

标签: hibernate servlets

解决方案......

  

java.lang.ClassNotFoundException:org.hibernate.HibernateException at   org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)     在   org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)     在com.example.servlet.Operation.doPost(Operation.java:52)at   javax.servlet.http.HttpServlet.service(HttpServlet.java:637)at at   javax.servlet.http.HttpServlet.service(HttpServlet.java:717)at at   org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)     在   org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)     在   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)     在   org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)     在   org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)     在   org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)     在   org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)     在   org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:602)     在   org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:489)     在java.lang.Thread.run(未知来源)

请给我这个错误的解决方案

2 个答案:

答案 0 :(得分:1)

缺少Hibernate jar

如果使用Maven

,请使用以下依赖项
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.3.11.Final</version>
</dependency>

或手动将jar添加到项目的类路径下面,链接应该有帮助

Why did Servlet.service() for servlet jsp throw this exception?

答案 1 :(得分:0)

您需要将hibernate-core-4.0.0.Final.jar添加到类路径中。这个jar包含所需的类org.hibernate.HibernateException

如果您使用的是eclipse IDE,那么this tutorial可以帮助您将jar添加到类路径中。


顾名思义,ClassNotFoundException在Java中是java.lang.Exception的子类,当 Java虚拟机尝试加载特定类并且未找到时类路径中请求的类。

关于此异常的另一个重点是,它是一个已检查的异常,并且您需要在使用可能通过使用try在Java中抛出ClassNotFoundException的方法时提供显式异常处理-catch块或使用throws子句。

Oracle docs

public class ClassNotFoundException
      extends ReflectiveOperationException

当应用程序尝试使用以下命令通过其字符串名称加载类时抛出:

  • 类Class。中的forName方法。
  • ClassLoader类中的findSystemClass方法。
  • ClassLoader类中的loadClass方法。

但是找不到具有指定名称的类的定义。