AdS*_*dSR 5 xml xpath namespaces ignore jdom
我需要处理XML DOM,最好是使用JDOM,我可以在节点上进行XPath搜索.我知道节点名称或路径,但我想完全忽略名称空间,因为有时文档带有名称空间,有时没有,我不能依赖于特定的值.那可能吗?怎么样?
Tom*_*lak 17
/ns:foo/ns:bar/@baz
Run Code Online (Sandbox Code Playgroud)
变
/*[local-name() = 'foo']/*[local-name() = 'bar']/@baz
Run Code Online (Sandbox Code Playgroud)
你明白了.不要指望它也是闪电般的.
小智 4
我知道这个问题有点老了,但是对于那些稍后查看这个问题的人来说,您可以覆盖一些 JDOM 默认类以有效地使其也忽略名称空间。您可以将自己的 JDOMFactory 实现传递给 SAXBuilder,该 SAXBuilder 会忽略传递到其中的所有命名空间值。
然后重写 SAXBuilder 类并实现 createContentHandler 方法,以便它返回一个带有 startPrefixMapping 方法的空白定义的 SAXHandler。
我还没有在生产环境中使用过它,所以买者自负,但我已经验证它确实适用于我所做的一些快速而肮脏的 XML 东西。
| 归档时间: |
|
| 查看次数: |
10442 次 |
| 最近记录: |