三个选择是显而易见的。按照我的观点,最简单的顺序是:
- 将XPath从更改
"//class"
为"//*[local-name() = 'class']"
。有点笨拙,但它将忽略名称空间。如果仍然为您提供零,则说明问题不在于名称空间。 - 在您的Java代码中为“ http://www.example.com/schema”注册一个名称空间前缀,并在您的XPath表达式中使用它:
"//foo:class"
- 弄清楚您正在使用哪种解析器实现以及为什么它与@Rodney的行为不同,或者更改为其他解析器实现



