簡體   English   中英

解析json文件引發stackoverflow異常

[英]Parsing json file throws stackoverflow exception

我有一個非常復雜的對象,到目前為止,我曾經通過@XmlRootElement將其序列化為xml,並且運行良好。 現在,我正在編寫REST,我需要將其序列化為json。 發生的情況是它將引發StackOverflowError異常。 到目前為止,我寫的是原因可能是雙向映射,但我認為情況並非如此。 可能是什么原因,如果我錯過了雙向映射,該對象真的很復雜並且很長時間以來得到了很多人的支持,該如何跟蹤?是否有一種簡單的方法可以跟蹤我想到的方法? 謝謝!

編輯這里是堆棧跟蹤:

StackOverflowError
    java.util.regex.Pattern.sequence(Pattern.java:1902)
    java.util.regex.Pattern.expr(Pattern.java:1769)
    java.util.regex.Pattern.compile(Pattern.java:1477)
    java.util.regex.Pattern.<init>(Pattern.java:1150)
    java.util.regex.Pattern.compile(Pattern.java:840)
    net.sf.json.regexp.JdkRegexpMatcher.<init>(JdkRegexpMatcher.java:38)
    net.sf.json.regexp.JdkRegexpMatcher.<init>(JdkRegexpMatcher.java:31)
    net.sf.json.regexp.RegexpUtils.getMatcher(RegexpUtils.java:39)
    net.sf.json.util.JSONTokener.matches(JSONTokener.java:113)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:962)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006)
    net.sf.json.JSONObject.fromObject(JSONObject.java:156)
    net.sf.json.util.JSONTokener.nextValue(JSONTokener.java:350)
    net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:1006

最好發布對象和用於反序列化的代碼。 另外,您可以嘗試使用其他庫:

傑克遜(或多或少的標准庫): http : //www.mkyong.com/java/how-to-convert-java-object-to-from-json-jackson/

GSON: JSON GSON.fromJson Java對象

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM