3
我已經創建了一個Bean來表示我將要解析的JSON對象。問題是,這個bean有嵌套的類。因此,編譯失敗。我通過刪除課程進行驗證。該應用程序編譯正確。這是錯誤我得到:由於嵌套bean,無法在playframework中使用GSON解析JSON
2012-11-05 19:23:30,783 ERROR ~
@6c8po9gbf
Internal Server Error (500) for request GET /favicon.ico
Oops: NullPointerException
An unexpected error occured caused by exception NullPointerException: null
play.exceptions.UnexpectedException: Unexpected Error
at play.Play.start(Play.java:545)
at play.Play.detectChanges(Play.java:629)
at play.Invoker$Invocation.init(Invoker.java:198)
at Invocation.HTTP Request(Play!)
Caused by: java.lang.NullPointerException
at play.classloading.ApplicationCompiler$2.acceptResult(ApplicationCompiler.java:266)
at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:478)
at play.classloading.ApplicationCompiler.compile(ApplicationCompiler.java:282)
at play.classloading.ApplicationClassloader.getAllClasses(ApplicationClassloader.java:424)
at play.Play.start(Play.java:505)
... 3 more
的JavaBean類是
import java.util.List;
import com.google.gson.Gson;
public class GsGetChallenge {
public static void main(String... args) throws Exception {
String json = "{\"response\":\n" + " {\"salt\":\n"
+ " \"zP9UFJOklQLePOqf0lSh0NgdlXWAt8qhIq4adcP1opdkz8UwVz\",\n"
+ " \"status\":\"SUCCESS\",\n"
+ " \"challenge\":\"BXuQQ2056310911\"\n" + "}}";
ResponseData responsee = new Gson().fromJson(json, ResponseData.class);
// Show it.
System.out.println(responsee.getResponse().getChallenge());
}
}
class ResponseData {
private Response response;
public static class Response {
private String salt;
private String status;
private String challenge;
public String getSalt() {
return salt;
}
public void setSalt(String salt) {
this.salt = salt;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getChallenge() {
return challenge;
}
public void setChallenge(String challenge) {
this.challenge = challenge;
}
}
public Response getResponse() {
return response;
}
public void setResponse(Response response) {
this.response = response;
}
}
我能做些什麼用GSON,在這種情況下?我正在使用遊戲1.2.4。
你從哪裏得到編譯失敗?這裏提供的所有代碼編譯得很好。 –
當我在提示符下鍵入'play run - %dev'時,我得到錯誤信息。 – theTuxRacer
我能夠通過將'ResponseData'類移動到另一個文件來進行編譯。 – theTuxRacer