我正在使用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
而不是JsonPath
的com.jayway.jsonpath.InvalidPathException
。
仔细检查您的import
语句。
关于java - Java JsonPath在代码中获取InvalidPathException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18540337/