Java 如何获取列表<;JsonPath>;从重新启动的JsonPath

Java 如何获取列表<;JsonPath>;从重新启动的JsonPath,java,generics,rest-assured,rest-assured-jsonpath,Java,Generics,Rest Assured,Rest Assured Jsonpath,我使用的是重新发布的框架,在它里面,有JsonPath类。 JsonPath有一个getList的方法签名(字符串路径,类T) 我曾尝试过这样做: List<JsonPath> myList = myJsonPathObject.getList("mypath", JsonPath.class); List myList=myJsonPathObject.getList(“mypath”,JsonPath.class); 我得到一个运行时强制转换异常。那么,正确的格式是什么呢。

我使用的是重新发布的框架,在它里面,有JsonPath类。 JsonPath有一个getList的方法签名(字符串路径,类T)

我曾尝试过这样做:

List<JsonPath> myList = myJsonPathObject.getList("mypath", JsonPath.class);
List myList=myJsonPathObject.getList(“mypath”,JsonPath.class);
我得到一个运行时强制转换异常。那么,正确的格式是什么呢。 我还试图:

List<JsonPath> myList = myJsonPathObject.getList("mypath", new ArrayList<JsonPath>().getClass());
List myList=myJsonPathObject.getList(“mypath”,新的ArrayList().getClass());

这也失败了。实际上,编译失败。

JsonPath用于从JSON文档中提取值。您无法从JSON文档中获取“JsonPath”列表。

我知道这是一个老威胁,但有人评论并提醒我这一点。我实际上找到了这个问题的答案

我要做的是将它转换成
映射
,在遍历对象时,我必须将对象转换成适当的类

Map<String, Object> myMap = (Map<String, Object>) myJsonPathObject.get("mypath");
for (String key : myMap.getKeySet()) {
  Map<String, Object> subMyMap = (Map<String, Object>) myMap.get(key);
}
Map myMap=(Map)myJsonPathObject.get(“mypath”);
for(字符串键:myMap.getKeySet()){
Map subMyMap=(Map)myMap.get(key);
}

因此,现在我可以继续获得额外的模型,json中的json。

您是否有任何文档支持您刚才所声称的内容。json是对象和子对象的标记,本质上json是json中json的标记,所以我不明白为什么不能从json中获取json列表。我是框架的创始人,所以我实现了JsonPath,它附带了Rest Assured,所以我知道它不受支持。它可能在其他框架中得到支持。我的一位同事实现了另一个JsonPath(),它不使用Groovy语法,并且可能支持您想做的事情。