【发布时间】:2014-01-14 02:11:56
【问题描述】:
我正在使用 Jersey 2.0(我从 http://repo1.maven.org/maven2/org/glassfish/jersey/bundles/jaxrs-ri/2.5/jaxrs-ri-2.5.zip 下载)开发休息服务,并且我正在使用 Tomcat 7.0.47。我从 Eclipse 运行 Tomcat,我的机器是 Mac。
我正在使用 Eclipse 工具来生成 WAR 并部署服务。
这是我的 web.xml:
<?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"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>MyServices</display-name>
<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.service.services.Services</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey REST Service</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
</web-app>
我将所有 Jersey jar 都包含在 WEB-INF/lib 中,除了 javax.servlet-api-3.0.1.jar 它在 Apache/lib 中
当我在Tomcat中部署时,它显示了一个非常奇怪的错误,原因是:
Caused by: java.lang.ClassNotFoundException: org.glassfish.jersey.client.ClientConfig
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
... 70 more
【问题讨论】:
-
你确定你了解ClassNotFoundExceptions吗?我问是因为您最近有类似的问题...stackoverflow.com/questions/20762707/…
-
呵呵,当然,我的朋友。我和 Resteasy 有同样的问题。
-
当然,我也是这样做的:在 web-inf/lib 等中包含库
-
好的,那么也许你想看看tomee.apache.org/apache-tomee.html。这是顶部的tomcat + javaee 库。特别看一下 JAX-RS 版本。 tomee.apache.org/downloads.html
-
Mac 下能用吗??哦,我需要使用 Tomcat,因为它是使用 Tomcat 的项目的一部分 :(
标签: java eclipse jersey tomcat7 jersey-2.0