【发布时间】:2016-07-02 23:34:26
【问题描述】:
我的 XML 如下所示:
<?xml version="1.0"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<mime-mapping>
<extension>123</extension>
<mime-type>application/vnd.lotus-1-2-3</mime-type>
</mime-mapping>
<mime-mapping>
<extension>3dml</extension>
<mime-type>text/vnd.in3d.3dml</mime-type>
</mime-mapping>
</web-app>
如您所见,它具有命名空间,因此默认 xpath(例如 /web-app/mime-mapping/mime-type)将不起作用。
根据我对各种线程的阅读, 我试过了:
/*[local-name()='web-app']/*[local-name()='mime-mapping']/*[local-name()='mime-type']
与
/*[name()='web-app']/*[name()='mime-mapping']/*[name()='mime-type']
与
/*[name()='web-app' and namespace-uri()='http://java.sun.com/xml/ns/javaee']/*[name()='mime-mapping' and namespace-uri()='http://java.sun.com/xml/ns/javaee']/*[name()='mime-type' and namespace-uri()='http://java.sun.com/xml/ns/javaee']
但似乎没有一个工作。我正在http://www.freeformatter.com/xpath-tester.html 进行测试。另外,我正在我的工具中进行测试,该工具需要 XPath 1.0,但它也无法识别上述任何内容。
任何指针?
【问题讨论】:
-
尝试不同的测试仪。 xpathtester.com/xpath 找到匹配项。
-
但是,我使用的工具需要 xpath 1.0。指定的 xpath 是 1.0 吗?该工具也不匹配此 xpath。我们可以用其他方式处理吗?
-
是的,那些 xpath 是 xpath 1.0
-
好的。我会再试一次。
-
@Alohci - 我试过你建议的工具。但是,它也不匹配这三个中的任何一个?它给出以下错误:
ERROR - Seem there is no XPath provided?