2014-10-16 74 views
1

我想获取xml中某个元素的文本值。在下面的XML中,当CODE的值是'Code1'时,我想获取SUBCHILD的值,而不管MP实体的位置是多少MP元素。此外,我希望能够做到这一点使用JAXB和莫西与@XMLPath属性使用EclipseLink的XPath使用MOXY和JAXB给出另一个元素的值

的XML我已经是这样的:

<RQ> 
    <PQ> 
     <MP> 
     <INFO> 
      <CODE>Code1</CODE> 
     </INFO> 
     <CHILD> 
      <SUBCHILD>VALUE for Code1</SUBCHILD> 
     </CHILD> 
     </MP> 
      <MP> 
     <INFO> 
      <CODE>Code2</CODE> 
      </INFO> 
     <CHILD> 
      <SUBCHILD>VALUE for Code2</SUBCHILD> 
     </CHILD> 
     </MP> 
</PQ> 
</RQ> 

我想“值代码1”的位置,MP的irrespecive包含Code1的元素可以在任何地方。我会用这个中的XPath是:

RQ/PQ/MP[INFO/CODE='Code1']/CHILD/SUBCHILD 

,但我不能似乎得到我从莫西所需的值,是此功能不支持,我知道,你可以根据属性映射,但我需要它根据另一个元素

的值任何帮助,将不胜感激

回答

1

莫西目前不支持其@XmlPath注释的格式如下的XPath。

如果指定的XPath不受支持,有一个打开的错误会引发异常。

你可以打开你正在寻找的行为的增强请求?

+0

我想,但我不知道我可以,因为我不是一个eclipse成员,另一个我发现我需要的是:获取基于它的标签的属性值等于另一个标签的属性值 – bobjamin 2015-01-15 08:06:47

相关问题