【问题标题】:java.lang.NoClassDefFoundError: org/restlet/engine/http/ServerCalljava.lang.NoClassDefFoundError: org/restlet/engine/http/ServerCall
【发布时间】:2014-04-25 13:58:13
【问题描述】:

我正在尝试在 Restlet 中编写一个 Web 服务,并且我已经包含了下面列出的 jar; 1.json-simple-1.1 2.log4j-1.2.16 3.org.json-20120521 4. org.restlet.ext.fileupload 5. org.restlet.ext.json 6. org.restlet.ext.servlet 7.org.restlet.ext.xml 8. org.restlet 9. servlet-api

当我在 tomcat 6 中运行此 Web 服务并将 URL 输入浏览器时,我收到异常消息:

 javax.servlet.ServletException: Error instantiating servlet class       
    org.restlet.ext.servlet.ServerServlet
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protoc        ol.java:588)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)
   root cause

java.lang.NoClassDefFoundError: org/restlet/engine/http/ServerCall
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)

根本原因

   java.lang.ClassNotFoundException: org.restlet.engine.http.ServerCall
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)




 Even though the jar is present and my web.xml code as follows:

  <?xml version="1.0" encoding="UTF-8"?>
   <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"       
    xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    id="WebApp_ID" version="2.5">

<display-name>RestletDemo</display-name>


<servlet>
    <servlet-name>RestletServlet</servlet-name>
    <servlet-class>org.restlet.ext.servlet.ServerServlet</servlet-class>
    <init-param>
        <param-name>org.restlet.application</param-name>
        <param-value>com.aris.demo.application.RestletApplication</param-alue>
    </init-param>
</servlet>
<servlet-mapping>
    <servlet-name>RestletServlet</servlet-name>
    <url-pattern>/service/*</url-pattern>
</servlet-mapping>




 </web-app>

请帮帮我.. 提前感谢

【问题讨论】:

    标签: java json servlets restlet-2.0


    【解决方案1】:

    请确保将 jar 文件复制到 Web 应用程序项目中的 WEB-INF/lib 文件夹中。

    【讨论】:

      【解决方案2】:

      我想我发现了你的问题。

      您访问了restlet 站点并下载了页面中的restlet 发行版。 现在您需要再次访问该站点,您将看到您已经下载了默认的 J2SE 版本的 Restlet 发行版。

      请从下拉列表中选择第二个选项 J2EE 并下载。

      现在您将获得您所寻找的一切,包括 org.restlet.jarorg.restlet.ext.servlet.jar

      放置WEB-INF lib,重启服务器,现在生活很幸福。

      【讨论】:

      • 感谢您的帮助,@kkjava
      猜你喜欢
      • 1970-01-01
      • 2016-08-12
      • 2015-03-05
      • 1970-01-01
      • 1970-01-01
      • 2014-10-06
      • 2017-03-16
      • 2015-10-27
      • 1970-01-01
      相关资源
      最近更新 更多