2

我有一个方法

@GET
@Produces("application/json")
public List<Conversation> getMyConversations() { /* ... */ }

json输出类似于

[{"conversation" : { ... }}, {"conversation" : { ... }}]

但是,我想输出这个

"conversations" :  [{"conversation" : { ... }}, {"conversation" : { ... }}]

有没有办法做到这一点?

4

1 回答 1

0

似乎这就是 JBoss RestEasy 的设计方式:http ://docs.jboss.org/resteasy/docs/2.2.1.GA/userguide/html_single/index.html#json_list

我已经看到通过将列表作为另一个类的成员返回来解决这个问题,例如

@XmlRootElement(name = "ConversationSet")
public class ConversationSet {
    private Set<Conversation> sonversations;
    // getters and setters...
}

这将产生如下内容:

   {
     "conversationSet": 
     {
       "conversations" :  [{"conversation" : { ... }}, {"conversation" : { ... }}]
     }
   }

这更接近大多数客户对 JSON 的期望。

于 2012-11-02T14:00:09.483 回答