因冒号而获得JSONException

时间:2016-05-07 09:15:46

标签: java json

我从LinkedHashMap

获取我的JSON值
LinkedHashMap<String,Object> lst = JsonPath.parse(json).read("$.projects[0].issuetypes[0].fields");

这是我试图解析的JSON:

{
    "required": false,
    "schema": {
        "type": "string",
        "custom": "com.atlassian.jira.plugin.system.customfieldtypes:textfield",
        "customId": 10161
    },
    "name": "Error Code",
    "operations": [
        "set"
    ]
}

然后我在想这会做这个工作

 JSONObject jsonObject = new JSONObject(lst.get(key).toString());

但后来我得到了这个例外:

   Exception in thread "main" org.codehaus.jettison.json.JSONException: Expected a ',' or '}' at character 95 of {required=false, schema={type=string, custom=com.atlassian.jira.plugin.system.customfieldtypes:textfield, customId=10161}, name=Error Code, operations=["set"]}

字符95是customfieldtypes和textfield之间的冒号

这可能有什么问题?

1 个答案:

答案 0 :(得分:2)

您正在尝试解析序列化对象,该对象不是有效的JSON。

lst.get(key).toString()

不会产生JSON。