我使用的是restassured框架,它的内部有JsonPath类。JsonPath的方法签名为getList(String path,Class T);
我曾经尝试过这样做:
List<JsonPath> myList = myJsonPathObject.getList("mypath", JsonPath.class);我得到了一个运行时类型转换异常。那么调用它的正确格式是什么呢?我还尝试了:
List<JsonPath> myList = myJsonPathObject.getList("mypath", new ArrayList<JsonPath>().getClass());这也是失败的。实际上,编译失败了。
发布于 2012-10-06 00:45:53
JsonPath用于从JSON文档中提取值。你不能从JSON文档中获取"JsonPath“的列表。
发布于 2014-10-22 21:19:18
我知道这是一个古老的威胁,但有人评论并提醒我这一点。我真的找到了这个问题的答案。
我要做的是将其转换为Map<String, Object>,在迭代对象时,我必须将该对象转换为适当的类。
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);
}所以现在我可以继续获得额外的模型,json中的json。
https://stackoverflow.com/questions/12537288
复制相似问题