2012-08-06 81 views
1

我有这样的资源:Jersey客户端的java.util.List <POJO>自动转换器

@GET 
@Path("/todos") 
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) 
public List<Cliente> getListagem() { 

而且我的球衣的客户是:

ClientResponse response1 = wr.accept(MediaType.APPLICATION_XML).get(ClientResponse.class); 
List<Cliente> colecao = response1.getEntity(List.class); 

它产生的误差修改 墓:消息正文Java类java.util.List和Java类型接口java.util.List,MIME媒体类型application/xml未找到

我想知道为什么球衣成为XML中的列表并且客户端无法自动转换它? 解决这个问题的最佳方法是什么? 问候..

回答

3

试试这个服务器上:

public JResponse<List<Cliente>> getListagem() { 
    List<Cliente> response = ......; 
    return JResponse.ok(response).build(); 
} 

这在客户端上:

Client client = Client.create(); 
WebResource resource = client.resource("http://localhost:8080/service"); 
List<Cliente> colecao = resource.accept(MediaType.APPLICATION_XML).get(new GenericType<List<Cliente>>() {}); 
+0

如何将客户端来获取上市? – 2012-08-07 13:06:30

+0

添加客户端代码到答案... – condit 2012-08-07 15:10:03

+0

好的.....我会试试.. – 2012-08-07 19:13:19