Annotation Type XmlList


@Retention(RUNTIME) @Target({FIELD,METHOD,PARAMETER}) public @interface XmlList
Used to map a property to a list simple type.

Usage

The @XmlList annotation can be used with the following program elements:

  • JavaBean property
  • field

When a collection property is annotated just with @XmlElement, each item in the collection will be wrapped by an element. For example,

 @XmlRootElement
 class Foo {
     @XmlElement
     List<String> data;
 }
would produce XML like this:
 <foo>
   <data>abc</data>
   <data>def</data>
 </foo>
XmlList annotation, on the other hand, allows multiple values to be represented as whitespace-separated tokens in a single element. For example,
 @XmlRootElement
 class Foo {
     @XmlElement
     @XmlList
     List<String> data;
 }
the above code will produce XML like this:
 <foo>
   <data>abc def</data>
 </foo>

This annotation can be used with the following annotations: XmlElement, XmlAttribute, XmlValue, XmlIDREF.

  • The use of @XmlList with XmlValue while allowed, is redundant since XmlList maps a collection type to a simple schema type that derives by list just as XmlValue would.
  • The use of @XmlList with XmlAttribute while allowed, is redundant since XmlList maps a collection type to a simple schema type that derives by list just as XmlAttribute would.
Author:
  • Kohsuke Kawaguchi, Sun Microsystems, Inc.
  • Sekhar Vajjhala, Sun Microsystems, Inc.