2012-04-11 21 views
0

的GET響應觸發與以下URI我將如何配置REST URI向這個URI

/PathA/SomePathA以下

@Path("/PathA") 
public class SubscriptionEntry 
{ 
    @Path("{PathA}") 
    public SomeType SomeMethod(@PathParam("parA") String userip) 
    { 
      //This is called!!! with /PathA/SomePathA 
      return new SomeResource(uriInfo,request,userip,httpreq); 
    } 
} 

其中SomeResource是這樣

public class SomeResource 
{ 
    @GET 
    public Type AnotherMethod 
    { 
     ..... 
     ..... 
    } 

     @Path({"What is suppose to be here???? since this class has no name??}") 
     public MyType MyMethod() 
     {.... 

     } 


} 

我的問題是我該如何調整上面的類(路徑中需要什麼),這樣MyMethod就會觸發像uris一樣的觸發器,如

/PathA/SomePathA /測試

/PathA/SomePathA/SomePathB /測試

我試圖做類似以下,但它不工作

@Path("/Test") 
     public MyType MyMethod() {} 

任何建議我怎麼能做這項工作或我失蹤?

+0

你編碼什麼行不通:澤西島將掃描註釋只有一次,只定義一次映射URL <->方法。所以當方法被調用時,URL-to-method映射已經發生。您重新路由方法調用,但Jersey網址已被修復。 – 2012-04-13 07:12:53

回答

0

首先,從另一個資源調用一個資源對於RESTful體系結構是錯誤的方法。第二,你問的是不可能的。

相反,你應該確定關係resources.Example之間:

  • 班有很多學生。
  • 學生屬於一類。

然後相應地形成您的網址。像

  • GET /類 - >獲取所有類
  • GET /班/(編號) - >獲取特定類
  • GET /班/ {ID} /學生 - >獲取特定類的學生
  • GET /學生 - >獲取所有學生
  • GET /學生/(編號) - >獲取一個mparticular學生

Here is nice article on URL design