我正在开发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:
MyServices Jersey REST Service org.glassfish.jersey.servlet.ServletContainer jersey.config.server.provider.packages com.service.services.Services 1 Jersey REST Service /services/*
我将所有泽西罐子包含在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
jjmartinez.. 9
我的解决方案
将从Jersey下载的所有库添加到Tomcat/lib中,并将其包含/ext
在Jersey .zip的文件夹中
将我的项目的Web-Inf/lib添加到/lib
Jersey zip文件夹下的库中
添加到我的项目的Web-Inf/lib中javax.ws.rs-api-2.jar
,您可以在/api
Jersey的文件夹中找到它
有了这个,我没有问题用Jersey运行Tomcat.
这是我的web.xml Jersey 2.0
MyRESTServices index.html index.htm index.jsp default.html default.htm default.jsp Jersey Web Application org.glassfish.jersey.servlet.ServletContainer jersey.config.server.provider.packages com.myservice.services 1 Jersey Web Application /rest/*
哪里com.myservice.services
有我服务的包裹
感谢您的意见!!
我的解决方案
将从Jersey下载的所有库添加到Tomcat/lib中,并将其包含/ext
在Jersey .zip的文件夹中
将我的项目的Web-Inf/lib添加到/lib
Jersey zip文件夹下的库中
添加到我的项目的Web-Inf/lib中javax.ws.rs-api-2.jar
,您可以在/api
Jersey的文件夹中找到它
有了这个,我没有问题用Jersey运行Tomcat.
这是我的web.xml Jersey 2.0
<?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>MyRESTServices</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>Jersey Web Application</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.myservice.services</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Jersey Web Application</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> </web-app>
哪里com.myservice.services
有我服务的包裹
感谢您的意见!!