2014-03-27 41 views
0

我不知道为什么这不起作用。在另一个项目中,它对于更复杂的对象(即使嵌套对象)也没有问题。Gson对象反序列化 - 空指针失败

我错过了一些痛苦明显的东西吗?

的json怎么看起来文件:

{ 
    "masterPort": 5000, 
    "errorLog": "aaaa" 
} 

的功能部分,其中i加载JSON:

File configFile = new File(pathToConfig); 
try { 
    BufferedReader br = new BufferedReader(new FileReader(configFile)); 
    Configuration a = gson.fromJson(br, Configuration.class); // <---- here it fails :(
} catch (catch blocks) { /*error handling*/ } 

我的配置类:

public class Configuration { 
    int masterPort = 5000; 
    String errorLog = "xvdsaf"; 
} 

堆栈跟踪,这是整件事情和它让我感到困惑:

java.lang.NullPointerException 
    at config.MasterConfiguration.load(MasterConfiguration.java:37) 
    at config.MasterConfiguration.load(MasterConfiguration.java:30) 
    at bs.Manager.loadConfiguration(Manager.java:43) 
    at bs.Manager.main(Manager.java:22) 
+1

后的异常堆栈跟踪。你初始化了'gson'吗? –

+0

它非常像'gson'是'null'。 –

+0

发布了,我已经初始化了gson。 – Gabriel

回答

0

你应该初始化GSON对象

Gson gson = (new GsonBuilder()).create();