2014年10月7日

建立 RESTful WS Server

Web.xml

<servlet>
    <servlet-name>ServletAdaptor</servlet-name><!--指定 Servlet 幫你處理 RESTful WS-->
    <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>imemo.ws</param-value><!--指定 RESTful WS Package-->
     </init-param>
     <load-on-startup>1</load-on-startup>
</servlet> <servlet-mapping>
     <servlet-name>ServletAdaptor</servlet-name>
     <url-pattern>/ws/*</url-pattern><!--指定 Servlet Mapping URL-->
</servlet-mapping>



 WS的Class

@Path("/members") //指定 RESTful 服務的 Path (URL)
public class AccountsServices {
    @POST //指定 HTTP Method
    @Consumes(MediaType.MULTIPART_FORM_DATA) //指定 Consumes (消化)資料型態
    @Produces(MediaType.TEXT_PLAIN) //指定 Produces (產出)資料型態
    @Path("vip") //指定 Subpath
    public String vip(@FormParam("account") String account) {
 
        return Response.ok("OK").build();
     }
}



WADL
URL: https://localhost:8888/ws/application.wadl

<application xmlns="http://research.sun.com/wadl/2006/10">
        <resources base="https://localhost:8888/ws/">
          <resource path="/members"><!--指定 Path-->
             <resource path="vip"><!--指定 Subpath-->
               <method id="vip" name="POST"><!--指定 HTTP Method -->
                  <request><representation mediaType="multipart/form-data"/></request><!--指定 Consumes (消化)資料型態 -->
                  <response><representation mediaType="text/plain"/></response><!--指定 Produces (產出)資料型態 -->
              </method>
        …



chrome套件:Postman

沒有留言:

張貼留言