Короче говоря, это эскиз объекта JSON, который я хочу проанализировать в JAVA:
{
object1: {
item1: //[String | Array | Object] ,
item2: // ...
//<> more items
object2: { /* .. */ }
//<> more objects
}
Это POJO, которые я создал для синтаксического анализа (я не буду приводить инструкции import
для краткости):
(1) Представление полного объекта JSON
public class JObjectContainer {
private List<JObject> jObjects ;
public JObjectContainer() { }
//get & set methods
}
(2) Представление вложенных объектов:
public class JObject {
private String id ;
private List<JNode> jObjects ;
public JObject() { }
//get & set methods
}
(3) Представление элементов:
public class JNode {
private JsonElement item1 ;
private JsonElement item2 ;
//<> more item fields
public JNode() { }
//get & set methods
}
Теперь, создав экземпляр Gson (FileReader
для импорта jsonFile
),
Gson gson = new Gson() ;
JObjectContainer joc = gson.fromJson(jsonFile,JObjectContainer.class) ;
Я получаю a NullPointerException
всякий раз, когда пытаюсь получить доступ к анализируемому объекту (например, через ListIterator
). Однако Gson создает объект указанного класса и не вызывает никаких последующих ошибок.
Я знаю, что это было сделано раньше. Итак, что мне не хватает?
ТИА