2015-09-17 66 views
1

我必須將我們的j2ee應用程序與REST Web服務集成。我想使用JBoss的RestEasy JAX-RS實現。 webservice以JSON格式返回一個數組。我有這段代碼:如何將JSON轉換爲使用RestEasy的POJO列表

Client client = ClientBuilder.newClient(); 
WebTarget target = client.target("http://myservices.com/schemes/all"); 
Response response = target.request().get(); 

我可以使用這個RestEasy的「響應」對象映射到List<Scheme>?謝謝

回答

3

假設您的JSON提供者能夠將JSON轉換爲適當的實體,那麼是的。您在代碼中調用的get方法具有重載版本,該版本接受要將結果轉換爲的實體類。由於與序列化某些集的實施問題,你的類型必須被包裹在GenericType類,像:

List<Scheme> schema = [...].get(new GenericType<List<Scheme>>(){}); 

以上方法應與幾乎所有JAX-RS兼容的實施工作。

您也可以使用Jackson庫,它允許您(除其他外)傳遞集合,而無需包裝它們。