Annotation Type XmlElementsJoinNodes


@Target({METHOD,FIELD}) @Retention(RUNTIME) public @interface XmlElementsJoinNodes
XmlElementsJoinNodes is used in conjunction with XmlElements in order to specify the key references for the targets of the XmlElements annotation. There must be one XmlJoinNodes for each XmlElement This is similar to using XmlIDREF with XmlElements but allows customisation of the xpath for the source keys and allows for composite key relationships.

Example:

 @XmlRootElement
 public class Client {

   ...

   @XmlElements({
       @XmlElement(name="mail", type=Address.class),
       @XmlElement(name="phone", type=PhoneNumber.class)
   })
   @XmlElementsJoinNodes({
       @XmlJoinNodes({
           @XmlJoinNode(xmlPath="mail/@id", referencedXmlPath="@aid"),
           @XmlJoinNode(xmlPath="mail/type/text()", referencedXmlPath="@type")
       }),
       @XmlJoinNodes({
           @XmlJoinNode(xmlPath="phone/@id", referencedXmlPath="@pid"),
           @XmlJoinNode(xmlPath="phone/type/text()", referencedXmlPath="@type")
       })
   })
   public Object preferredContactMethod;
 
See Also:
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description