【问题标题】:Tomcat Start up error in Restful web service using JerseyTomcat在使用Jersey的Restful Web服务中启动错误
【发布时间】:2013-06-09 07:45:07
【问题描述】:

我得到了tomcat启动异常

SEVERE: Servlet /WebServiceModule threw load() exception
java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer

在获得异常tomcat启动并正常工作后,但没有按预期工作。

我在 java 构建路径中包含了以下球衣及其依赖项

jersey-bundle-1.17
jaxb-imp-2.2.4
jaxb-api-2.2.9
asm-3.1

在 jersey bundle 库中 com.sun.jersey.spi.container.servlet 包存在并且它有 ServletContainer.class 文件。我正在使用 tomcat 7.0 服务器,所有工作都在 eclipse 中完成。

【问题讨论】:

    标签: java tomcat jersey


    【解决方案1】:

    “com.sun.jersey.spi.container.servlet.ServletContainer”包含在“jersey-server.jar”中。确保你的依赖路径中有它。如果您使用的是 maven,请使用:

    <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.8</version>
        </dependency>
    

    【讨论】:

    • 我已经包含了球衣包。是不是没有包含所有的 jersey-server-api、client 和 core api??
    • 谢谢。 jersey-server.jar 文件是必需的。可能是 jersey-server-jar 文件中的 tomcat search serveletcontainer 而不是 jersey-bundle。
    【解决方案2】:

    您使用哪种构建工具?马文?通过 IDE 构建?确保所有库都部署在您的 War 中/内部!每次遇到此异常,将缺少的库添加到 War 文件中即可解决问题。

    如果您使用 IDE 构建,您肯定需要首先告诉它哪些包将包含在您部署的 WAR 中。

    【讨论】:

      【解决方案3】:

      com.sun.jersey.spi.container.servlet.ServletContainer 包含在 jersey-server.jar 中,而不是 jersey-core.jar。要使用 Jersey 开发 REST 服务,您只需要包含 jersey-server.jar,它会自动下载 jersey-core.jar 依赖项。只需在 pom.xml 中添加依赖,如下所示:

      <dependency>
         <groupId>com.sun.jersey</groupId>
         <artifactId>jersey-server</artifactId>
         <version>1.8</version>
      </dependency>
      

      现在您的应用程序将拥有 com.sun.jersey.spi.container.servlet.ServletContainer

      【讨论】:

        猜你喜欢
        • 2019-03-05
        • 1970-01-01
        • 1970-01-01
        • 2018-02-04
        • 1970-01-01
        • 2015-03-11
        • 1970-01-01
        • 2018-01-30
        • 1970-01-01
        相关资源
        最近更新 更多