0

以下のjsonを解析しようとしています。これにより、json 形式が正しくないというエラーが表示されます。しかし、パーサーは "value:15" までのみ json を解析し、例外をスローしていません。どうすればこれを達成できますか?

String json = { and : [{key: domain, value: cricket}, {key : STAT_CDE,value : 15}]}, { and : [{key: domain, value: football}, {key : STAT_CDE,value : 10}]}

私が使用しているサンプルコード:

import org.codehaus.jackson.map.ObjectMapper;

ObjectMapper mapper = new ObjectMapper();
mapper.readTree(json); //this line is not throwing me any exception

コード スニペットは次のとおりです。

import org.codehaus.jackson.map.ObjectMapper;

public class JsonTestParse {
    public static void main(String[] args) {
        String json = "{ \"and\" : [{\"key\": \"domain\", \"op\": \"=\", \"value\": \"cricket\"}, {\"key\" : \"STAT_CDE\",\"op\" : \"=\",\"value\" : \"13\"}]},"+
                "{ \"and\" : [{\"key\": \"domain\", \"op\": \"=\", \"value\": \"Football\"}, {\"key\" : \"STAT_CDE\",\"op\" : \"=\",\"value\" : \"10\"}]}";

        System.out.println("json: " + json);

        ObjectMapper mapper = new ObjectMapper();
        try {
            mapper.readTree(json);
        } catch (Exception e) {
            System.out.println("object mapper exp");

        }
        System.out.println("mapper complete");

    }

}

そして出力:

1 行目: json: { "and" : [{"key": "domain", "op": "=", "value": "cricket"}, {"key": "STAT_CDE","op": "=","value": "13"}]},{ "and": [{"key": "domain", "op": "=", "value": "Football"}, {"key " : "STAT_CDE","op" : "=","value" : "10"}]} 2 行目: マッパーの完了

4

1 に答える 1