Difference between revisions of "EclipseLink/UserGuide/MOXy/Simple Values/Enums"

From Eclipsepedia

Jump to: navigation, search
m (New page: Use the '''@XmlEnumValue''' annotation with '''XmlEnum''' to map an '''enum''' constant in Enum type to XML representation. The @XmlEnumValue annotation can be used with the '''enum cons...)
 
m
Line 1: Line 1:
 +
{{EclipseLink_UserGuide
 +
|info=y
 +
|toc=y
 +
|eclipselink=y
 +
|eclipselinktype=moxy
 +
|api=y
 +
|apis= * [http://www.eclipse.org/eclipselink/api/latest/index.html?javax/xml/bind/annotation/XmlAttribute.html XmlAttribute]
 +
* [http://www.eclipse.org/eclipselink/api/latest/index.html?javax/xml/bind/annotation/XmlElement.html XmlElement]
 +
* [http://www.eclipse.org/eclipselink/api/latest/index.html?javax/xml/bind/annotation/XmlElementWrapper.html XmlElementWrapper]
 +
* [http://www.eclipse.org/eclipselink/api/latest/index.html?javax/xml/bind/annotation/XmlValue.html XmlValue]
 +
* [http://www.eclipse.org/eclipselink/api/latest/index.html?javax/xml/bind/annotation/XmlList.html XmlList]
 +
}}
  
 
+
=Mapping Enums=
 
Use the '''@XmlEnumValue''' annotation with '''XmlEnum''' to map an '''enum''' constant in Enum type to XML representation. The @XmlEnumValue annotation can be used with the '''enum constant''' element.
 
Use the '''@XmlEnumValue''' annotation with '''XmlEnum''' to map an '''enum''' constant in Enum type to XML representation. The @XmlEnumValue annotation can be used with the '''enum constant''' element.
  
Line 50: Line 62:
 
     </xs:simpleType>
 
     </xs:simpleType>
 
</source>
 
</source>
 +
 +
{{EclipseLink_MOXy
 +
|previous= [[EclipseLink/UserGuide/MOXy/Simple_Values/Collections/XMLDirectCollectionMapping|XMLDirectCollectionMapping]]
 +
|next=    [[EclipseLink/UserGuide/MOXy/Simple_Values/Special_Schema_Types|Special Schema Types]]
 +
|up=      [[EclipseLink/UserGuide/MOXy/Simple_Values|Simple Values]]
 +
|version=2.2.0 Draft
 +
}}

Revision as of 12:09, 28 December 2010

EclipseLink moxy

Contents


Mapping Enums

Use the @XmlEnumValue annotation with XmlEnum to map an enum constant in Enum type to XML representation. The @XmlEnumValue annotation can be used with the enum constant element.


Mapping enum constant name

This code:

     @XmlEnum(String.class)
     public enum Card { CLUBS, DIAMONDS, HEARTS, SPADES }

will generate the following XML schema:

     <xs:simpleType name="Card">
       <xs:restriction base="xs:string"/>
         <xs:enumeration value="CLUBS"/>
         <xs:enumeration value="DIAMONDS"/>
         <xs:enumeration value="HEARTS"/>
         <xs:enumeration value="SPADES"/>
     </xs:simpleType>

Mappin enum constant name(value)

This code:

     @XmlType
     @XmlEnum(Integer.class)
     public enum Coin { 
         @XmlEnumValue("1") PENNY(1),
         @XmlEnumValue("5") NICKEL(5),
         @XmlEnumValue("10") DIME(10),
         @XmlEnumValue("25") QUARTER(25) }

will generate the following XML schema:

     <xs:simpleType name="Coin">
       <xs:restriction base="xs:int">
         <xs:enumeration value="1"/>
         <xs:enumeration value="5"/>
         <xs:enumeration value="10"/>
         <xs:enumeration value="25"/>
       </xs:restriction>
     </xs:simpleType>

Eclipselink-logo.gif
Version: 2.2.0 Draft
Other versions...