Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EclipseLink/UserGuide/MOXy/Simple Values/Enums

< EclipseLink‎ | UserGuide‎ | MOXy‎ | Simple Values
Revision as of 12:06, 28 December 2010 by Rick.sapir.oracle.com (Talk | contribs) (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...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


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>

Back to the top