2012-07-19 30 views
2

我使用的數據網格道場客戶端,它工作得很好,並根據它documentation生成以下GET請求列標題,當點擊:如何使用基於wink的REST API對dojox.grid.DataGrid進行排序?

GET http://localhost:8080/books/rest/books?sort(+isbn) 

問題是,我無法解釋查詢參數使用Apache Wink框架在服務器端「排序(+ isbn)」,因爲沒有爲它設置值。例如。我期望像「sort = + isbn」這樣的東西。

這裏是我的服務器端代碼:

@Path("/books") 
public class BookServiceImpl implements BookService { 
... 
    @GET 
    @Produces(MediaType.APPLICATION_JSON) 
    public String getBook(@QueryParam("sort") String sortBy) { 
     System.out.println("Received Queryparam for sort is " + sortBy); 
     return ""; 
    } 

} 

由於「排序(+ ISBN)」沒有分配給它的價值,這似乎是一個無效的查詢參數。不知道爲什麼Dojo數據網格使用這種約定。

想知道如何解決這個在Java端,理想情況下使用Wink或其他機制來處理GET請求的幫助。

回答

2

嘗試使用@Context UriInfo以獲得完整的uri信息,致電UriInfo.getQueryParameters以獲取所有查詢參數。我相信sort(+isbn)將在那裏。

+0

太好了,非常出色! Thx Tarlog! – toby88 2012-07-20 15:56:41

相關問題