我在使用JsonPath检查字段前面带有命名空间的json时遇到麻烦。我无法从google中找到任何东西,也无法查看现有问题或留档。我无法让任何东西正常工作。我有以下json片段:
{
"_embedded" : {
"bb:list" : [ {
"id" : "id",
"label" : "label",
"description" : "description",
"timezone" : "timezone",
"postalAddress" : {
"addressCountry" : "country",
"addressLocality" : "city",
"addressRegion" : "state",
"postalCode" : "postal code",
"streetAddress" : "street address"
}
} ]
}
}
我正在尝试检查bb:list字段,看看其中有多少项。这个JsonPath表达式似乎不起作用:
“$._embedded.bb:list”
如果我删除了“bb:”,那么使用它可以使用“$._embedded.list”,所以它是bb:它似乎不喜欢。
所以事实证明,我遇到的问题根本不是JsonPath表达式或JsonPath。Spring Boot引入了JsonPath,所以一切都编译好了,看起来很好,但是在运行时,无论出于什么原因,它都不起作用。我明确地将JsonPath添加到我的依赖列表中,它神奇地开始工作。
编辑:所以上面的修复不是永久性的。事实证明,JsonPath - Json-smart的瞬态依赖关系使用的版本比Spring-test(通过几个瞬态依赖关系)拉入的版本的版本更新。我通过从spring-starter-test依赖项中添加json-smart的排除项来修复它:
testCompile('org.springframework.boot:spring-boot-starter-test'){
exclude group: 'json-smart'
}
我已经阅读了这里的文章和在使用JAXB时处理数字签名的示例代码,并且遇到了一个问题,我认为是JAXB封送将名称空间引入“signedinfo”元素。 我定义了一个XSD,它将被用不同编程语言实现的多个应用程序使用。我将XSD编译为JAXB注释类,供我的实现(Jersey JAX-RS和JAX-WS)使用。我目前拥有的流量如下: JAXB对象使用适当的数据创建或从远程应用程序传递。 按照Blaise
我面临Elasticsearch结果的问题,该结果在属性名称中使用@。json结果片段: {“\u index”:“logs-2015.12.31”,“\u type”:“log”,“\u id”:“AVH4eA4QKV0mbJuiIHO1”,“\u score”:null,“\u source”:{“@timestamp”:“2015-12-31T14:36:35.378Z”,“beat”:{“
问题内容: 该问题旨在作为回答一个特殊问题的参考,该问题可能采用不同的形式: 我有一个XML文档,其中包含多个名称空间。如何使用SimpleXML解析它? 我的XML在标记名称中有一个冒号(“:”),如何使用SimpleXML访问它? 当名称中带有冒号时,如何访问XML文件中的属性? 如果您的问题已作为与此问题的重复而关闭,则该问题可能与这些示例不同,但是此页面应告诉您您需要知道的内容。 这是一个
我有一个来自外部endpoint的巨大XML响应。我想解析java类的XML响应。如果没有一个XML有名称空间,我就能够解析成相应的POJOS,直到那时一切都很好。 但是,响应可能仅在根元素中包含命名空间。例如,像这样 我可以保证没有一个内部xml元素会有更多的命名空间。 有没有办法实现这一点?我看到一些完全忽略命名空间的答案,但感觉不是很有说服力。有没有办法正确解析这些。 这是我为XML响应建模
我正在尝试选择一个特定的
XPath如何处理XML命名空间? 如果我使用 为了解析下面的XML文档,我得到了0个节点。 但是,我没有在XPath中指定名称空间(即不是路径的每个标记的前缀)。如果我没有明确告诉XPath,它怎么知道我想要哪个?我认为在这种情况下(因为只有一个名称空间),XPath可以完全忽略。但如果有多个名称空间,事情可能会变得糟糕。