有行家運行。然後運行這個命令(如果詢問請按回車鍵):
mvn archetype:generate -DgroupId=com.test.rest -DartifactId=test -DarchetypeArtifactId=maven-archetype-webapp
它會創建一個簡單的web應用程序。現在創建的源代碼包作爲的src/main/JAVA/COM /測試/休息,並創建一個簡單的類與它的名稱「測試」以下內容:
package com.test.rest;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Response;
@Path("/test")
public class test{
@GET
@Path("/{param}")
public Response getMsg(@PathParam("param") String msg) {
String output = "Jersey say : " + msg;
return Response.status(200).entity(output).build();
}
}
在這一點上,你應該得到的錯誤,解決他們加入這個依賴於你的POM:
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
你可以運行一個虛擬的「MVN全新安裝」,使Maven將下載的資源庫和你的錯誤就會消失。現在
,去的webapp/WEB-INF和配置你的web.xml如下:
<web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Restful Web Application</display-name>
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.test.rest</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
這裏我們說的哪些類被加載,也給了一個小的前綴爲「/休息」。所以你的web服務將以這個前綴開頭。
現在您已經準備好了,構建應用程序,並將jar文件添加到tomcat/webapps文件夾下。當你運行你的tomcat,可以訪問到你的web服務:
(url_to_tomcat_server/jar_name都/ prefix_at_web_xml/prefix_at_java_rest_class/dummy_text_requested_byclass)
localhost:8080/test/rest/test/blabla
注:測試並運行
你是否將球衣庫添加到你的類路徑中? – 2012-04-04 10:32:18
是的,我添加了所有jersy jars到lib文件夾 – Rajeswari 2012-04-04 10:33:49
請參閱http://stackoverflow.com/q/10009199/443515 – Qwerky 2012-04-04 11:07:40