2014-03-27 39 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();