How do I use Google's Gson API to deserialize JSON properly?
- by FK82
Hi,
In short, this is a sketch of the JSON object I want to parse in JAVA:
{
    object1: {
            item1: //[String | Array | Object] ,
            item2: // ...
            //<> more items
    object2: { // }
    //<> more objects
}
These are the POJO s I created for parsing (I'll leave out the import statements for brevity's sake): 
(1) The representation of the complete JSON object
public class JObjectContainer {
    private List<JObject> jObjects ;
    public JObjectContainer() { // }
    //get & set methods
}
(2) The representation of the nested objects:
 public class JObject {
    private String id ;
    private List<JNode> jObjects ;
    public JObject() { // } 
    //get & set methods
}
(3) The representation of the items:
 public class JNode {
    private JsonElement item1 ;
    private JsonElement item2 ;
    //<> more item fields
    public JNode() { // }
    //get & set methods
}
Now, creating a Gson instance (FileReader for importing the jsonFile),
 Gson gson = new Gson() ;
 JObjectContainer joc = gson(jsonFile,JObjectContainer.class) ;
I get a NullPointerException whenever I try to access the parseable object (e.g. through a ListIterator). Gson does however create an object of the class I specified and does not throw any subsequent errors.
I know that this has been done before. So, what am I missing?
TIA