使用 Jersey + Tomcat 轻松开发 RESTful Web Service

摘要:使用 Jersey + Tomcat 轻松开发 RESTful Web Service


最近的案子使用到Restful Web Service,

网络上找了一些关于Jersey + Tomcat 开发 RESTful Web Service的教学,

但实际照图施工,总是让我一次次失望,run不起来,

后来发现,原来是因为版本不同,Jersey套件放的名称已经改变,

所以这边整理一下最新的设定方式。

附带一提,必须run在Tomcat 6.0才行,5.5版本会有Exception出现:

Caused by: java.lang.ClassNotFoundException: javax.persistence.PersistenceUnit

至于原因,若有哪位高手愿意指教,十分感谢。  ^^

底下简单列一下目前所使用的版本:

  •           Eclipse 3.5
  •           Tomcat 6.0.22
  •           Jersey 1.1.2


这里提供Jersey套件官网下载连结: 点此下载

首先建立一个Dynamic Web Project,假设我这边命名RestfulDemo

将底下四个Jersey的jar档放到classpath下,也就是WEB-INF/lib/下,在下试过,缺一不可,会有Exception

        asm-3.1.jar

        jersey-core-1.1.2-ea.jar

        jersey-server-1.1.2-ea.jar

        jsr311-api-1.1.jar

设定web.xml,加上下面设定

Normal 0 0 2 false false false MicrosoftInternetExplorer4

  

      ServletAdaptor

      com.sun.jersey.server.impl.container.servlet.ServletAdaptor

      1

  

  

      ServletAdaptor

      /resource/*

  

 

建立下面Rest程序

Normal 0 0 2 false false false MicrosoftInternetExplorer4

package demo.rest;

import javax.ws.rs.GET;

import javax.ws.rs.Path;

import javax.ws.rs.Produces;

@Path("/helloworld") // sets the path for this service

public class HelloRS {

   

   @GET

   @Produces("text/html") // content type to output

   public String getClichedMessage() {

       return "Hello World";

   }

}

Delpoy到Tomcat,并用Browser到下列网址,Enjoy : )

http://127.0.0.1:8080/RestfulDemo/resource/helloworld

至于Restful程序撰写教学,个人觉得,Sun写的RESTful Web Services Developer’s Guide写的蛮不错的,简单易懂,还蛮容易入门的。


Rocky Wang.  OCUP, NCLP, SCJP, SCWCD, SCBCD