2011-07-29 46 views
1

我嘗試運行此代碼,但得到了空例外。在Play框架中消費Json

Java代碼:

public static void updateData(List<Users> users){ 
    for(Users u : users){ //Error 
     System.out.println(u.name); // Error 
    } 
} 

ExtJS的代碼:

proxy: { 
    type: 'ajax', 
    api: { 
     update: '/Application/updateData' 
    }, 
    reader: { 
     type: 'json', 
     root: 'users', 
     successProperty: 'success' 
    } 
    } 

JSON數組:

[{"name":"Ed","email":"[email protected]"},{"name":"Ez","email":"[email protected]"}] 

所以,請告訴如何JSON數組綁定到實體列表上播放框架 1.2 0.2。 謝謝...

回答

2

您已在您的讀者配置中指定root: 'users'。這意味着,JSON數組應該是這樣的:

{users: [{"name":"Ed","email":"[email protected]"},{"name":"Ez","email":"[email protected]"}]} 
+0

謝謝,但它不適合我,它是一個空列表。 – Koptan

0

你必須使用GSON:

List<User> userList = new Gson().fromJson(yourString, Users.class); 

並有適合你的JSON一個用戶等級:

public class Users { 
    private String name; 
    private String email; 
    ... 
    //[Add your getter and setter] 
    ... 
} 

欲瞭解更多信息你可以閱讀GSON documentation