2011-07-28 32 views
1

我使用renderJSON()方法返回一個對象數組,每個元素的類都有一個自定義的JsonSerializer。響應的格式如下:Playframework renderJSON()array

[{"id":2,"name":"fred"},{...},...] 

但我想在begginning添加陣列的名稱:

"arrayname":[{"id":2,"name":"fred"},{...},...] 

我如何可以添加對象的名稱與JSON響應renderJSON()?我應該使用模板還是可以用java代碼來完成?

回答

3
"arrayname":[{"id":2,"name":"fred"},{...},...] 

貌似無效JSON,但如果你換了陣列中的一個對象,你可以得到:

{"arrayname":[{"id":2,"name":"fred"},{...},...]} 

例如是這樣的:

public class MyArrayWrapper { 
    public final User[] arrayname; 
    public MyArrayWrapper(User[] arrayname) { 
     this.arrayname = arrayname; 
    } 
} 

然後就可以調用renderJSON(new MyArrayWrapper(yourUserArray));獲得JSON,如:

{"arrayname":[{"id":2,"name":"fred"},{...},...]} 
+0

是的。這是如何完成的。 –

+0

謝謝,它工作。 – javierhe

0

或者只是返回一個列表Arrays.asList(ARR);