eclipselink moxy xpath-选择当前节点的所有子元素或文档中具有特定名称的所有元素

eclipselink moxy xpath-选择当前节点的所有子元素或文档中具有特定名称的所有元素,xpath,eclipselink,moxy,Xpath,Eclipselink,Moxy,我在jaxb类中为moxy定义了这个xpath @XmlPath(“子项::*/REG”) 公开名单条目 但它无法正确地解组xml文档。名为entries的列表变量为空 我也试过了 @XmlPath(“*/REG”) 公开名单条目 我也试过了 @XmlPath(“//REG”) 公开名单条目 毫无乐趣 但如果我这样做了 @XmlPath(“BANKGIRO/REG”) 公开名单条目 很好,列表已填充 我还没有看过源代码,但我猜这种类型的xpath还不受支持。我在xpath验证器中检查了我的所有x

我在jaxb类中为moxy定义了这个xpath

@XmlPath(“子项::*/REG”) 公开名单条目

但它无法正确地解组xml文档。名为entries的列表变量为空

我也试过了

@XmlPath(“*/REG”) 公开名单条目

我也试过了

@XmlPath(“//REG”) 公开名单条目

毫无乐趣

但如果我这样做了

@XmlPath(“BANKGIRO/REG”) 公开名单条目

很好,列表已填充

我还没有看过源代码,但我猜这种类型的xpath还不受支持。我在xpath验证器中检查了我的所有xpath是否正常,上面的所有xpath都正常(所有xpath对于我所在的上下文节点都有效)。

目前不支持类似于:
@XmlPath(“child::*/REG”)
的xpath。我们的重点是支持XPath语句,这些语句为编组和解编组提供足够的信息。例如,
@XmlPath(“child::*/REG”)
在读取时的含义是明确的,但在将该对象写回XML或JSON时,其含义是不明确的。如果您对此类支持感兴趣,请输入增强请求:

MOXy确实支持XPath,如:

  • @XmlPath(“.”//映射到self节点,在将两个对象映射到同一元素时非常有用
  • @XmlPath(“@foo”)//映射到属性
  • @XmlPath(“foo”)//映射到元素
  • @XmlPath(“foo[2]”//映射到
  • @XmlPath(“foo[@bar='Hello World']”//映射到具有值为“Hello World”的bar属性的foo元素
  • @XmlPath(“ns1:foo/ns2:@bar”)//映射到命名空间限定的节点
了解更多信息

目前不支持类似于:
@XmlPath(“child::*/REG”)
的XPath。我们的重点是支持XPath语句,这些语句为编组和解编组提供足够的信息。例如,
@XmlPath(“child::*/REG”)
在读取时的含义是明确的,但在将该对象写回XML或JSON时,其含义是不明确的。如果您对此类支持感兴趣,请输入增强请求:

MOXy确实支持XPath,如:

  • @XmlPath(“.”//映射到self节点,在将两个对象映射到同一元素时非常有用
  • @XmlPath(“@foo”)//映射到属性
  • @XmlPath(“foo”)//映射到元素
  • @XmlPath(“foo[2]”//映射到
  • @XmlPath(“foo[@bar='Hello World']”//映射到具有值为“Hello World”的bar属性的foo元素
  • @XmlPath(“ns1:foo/ns2:@bar”)//映射到命名空间限定的节点
了解更多信息


您使用的工具似乎不是兼容的XPath处理器。你试过
*/REG
?这是我第一次尝试的。这也证明是徒劳无益的。为了清楚起见,我在上面的列表中添加了*/REG。您使用的工具似乎不是兼容的XPath处理器。你试过
*/REG
?这是我第一次尝试的。这也被证明是徒劳的。为了澄清这一点,我在上面的列表中添加了*/REG。我认为这是因为映射回xml将是不明确的,但简单的XmlElement(name=“blah”)(在解组时使用xpath,在编组时使用XmlElement)在我看来似乎是一条出路。然而,我知道我的解决办法的后果可能意味着它不像看上去那么容易。除此之外,这是一个伟大的产品。我会提出请求的我很高兴听到你喜欢莫西。这绝对是一个有趣的用例。如果您对元数据的外观有任何想法,我将不胜感激。我已经在提出了更改请求。希望我能帮忙。其他人也知道|运算符也不受支持。我认为这是因为映射回xml是不明确的,但简单的XmlElement(name=“blah”)(在解组时使用xpath,在编组时使用XmlElement)在我看来似乎是一种解决方法。然而,我知道我的解决办法的后果可能意味着它不像看上去那么容易。除此之外,这是一个伟大的产品。我会提出请求的我很高兴听到你喜欢莫西。这绝对是一个有趣的用例。如果您对元数据的外观有任何想法,我将不胜感激。我已经在提出了更改请求。希望我能帮忙。只是让其他人知道|运算符也不受支持。