2012-02-28 35 views
0

我正在構建一個REST Web服務來管理客戶和客戶訂單。設計此REST Web服務接口的「正確」實踐是什麼?

我使用Eclipse 3.4上的WebSphere 7

JAX-RS(Apache的表情1.0)我在web.xml中定義的,像這樣的web項目...

<servlet> 
    <servlet-name>JAX-RS Servlet</servlet-name> 
     <servlet-class>org.apache....RestServlet</servlet-class> 
     <init-param> 
      <param-name>javax.ws.rs.Application</param-name> 
      <param-value>com.mydomain.ws.CustomerWS</param-value> 
     </init-param> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>JAX-RS Servlet</servlet-name> 
     <url-pattern>/ws/*</url-pattern> 
    </servlet-mapping> 
/***/ 
</servlet> 

。 ..它給了我一個URL,如http://.../ws/customers返回所有客戶。

現在我需要做的就是像http://.../ws/orders那樣的返回所有訂單。

我的問題是,

我想添加第二個Web服務 - 我該怎麼添加到web.xml,使新的Web服務是可見的?或者我應該爲我的第二個「訂單」Web服務創建一個全新的Web項目?

或其他想法?不知道如何設計「正確」。

謝謝,羅布

+0

你可能想在這裏按照安裝說明:http://incubator.apache.org/wink/1.0/html/JAX -RS%20Getting%20Started.html。 – Perception 2012-02-28 18:26:43

+0

謝謝,但我已經做到了。該鏈接不回答有關添加第二個Web服務的問題。謝謝。 – 2012-02-28 19:22:03

+0

您是否在getClasses方法中添加了第二個類作爲資源? – Perception 2012-02-28 19:37:53

回答

1

我不熟悉的表情,但假設它是JAX-RS兼容,你不應該需要任何的web.xml的變化。 如果你的容器是JAX-RS感知,

  • 那麼你的註釋與@Path二等應該自動部署
  • 否則你可以在新的資源類添加到您的REST應用,例如基於示例您聯繫並猜測你的資源類名稱:

    @Override 
    public Set<Class<?>> getClasses() { 
        Set<Class<?>> classes = new HashSet<Class<?>>(); 
        classes.add(CustomersResource.class); 
        classes.add(OrdersResource.class); 
        return classes; 
    } 
    
相關問題