Annotation Type XmlList


@Retention(value=RUNTIME)
 @Target(value={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>def
 </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
 </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.
Since:
JAXB2.0

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/javax/xml/bind/annotation/XmlList.html