我正在使用JsonPath并能够解析我的数据并在提供的路径正确时获取值。

但是,当我提供错误的路径(用户输入)时,程序终止。我不希望那样发生。无论如何,我有没有赶上这个例外并继续下一步?

try
        {
            String value = JsonPath.read(jsonText, jsonPath);

            System.out.println(value);
        }
        catch(InvalidPathException e)
        {
            System.out.println("ERROR<InvalidPathException>: "+e.getMessage());
        }


我收到无效路径的以下错误:

Exception in thread "main" com.jayway.jsonpath.InvalidPathException: invalid path
at com.jayway.jsonpath.internal.filter.FieldFilter.filter(FieldFilter.java:59)
at com.jayway.jsonpath.JsonPath.read(JsonPath.java:182)
at com.jayway.jsonpath.JsonPath.read(JsonPath.java:202)
at com.jayway.jsonpath.JsonPath.read(JsonPath.java:307)
at office.jsonPathparse.main(jsonPathparse.java:37)


此异常似乎来自jar的类FieldFilter。

最佳答案

如果我对您的理解正确,并且没有执行catch块,则必须捕获Java 7的java.nio.file.InvalidPathException而不是JsonPathcom.jayway.jsonpath.InvalidPathException

仔细检查您的import语句。

关于java - Java JsonPath在代码中获取InvalidPathException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18540337/

10-13 08:35