我在反序列化java类时遇到stackoverflow错误。
代码
Gson gson = gsonBuilder.create();
Type listType = new TypeToken<List<StorageEntity>>() {}.getType();
List<StorageEntity> logObj = gson.fromJson (dbDocument, listType);
当我执行gson.fromJson(dbDocument,listType)时,我得到下面提到的堆栈跟踪。
java.lang.StackOverflowError
at com.google.gson.SimpleCharStream.GetImage(SimpleCharStream.java)
at com.google.gson.JsonParserTokenManager.jjFillToken(JsonParserTokenManager.java)
我已经google了,并且认为gson无法解析长字符串。帮我解决这个问题。
问题是这样的
http://code.google.com/p/google-gson/issues/detail?id=96
但我没有找到任何答案。
答案 0 :(得分:1)
检查您尝试反序列化的对象是否具有循环引用。如果是的话,将会有一个无限循环。