Hi Expert Group
The current JPA spec provides @Enumerated, with EnumType being limited to ORDINAL and STRING.
ORDINAL is not good long term, as enumerations may be expanded, and ordinal positions will change if new literals are inserted. Seems too brittle.
STRING is better than ORDINAL, but creates a conflict between the desire for short codes in the database, and meaningful literal names.
What users really want is the ability to map an enum literal to a code (a short string, or number).
The design problem you have, is how to best specify the custom enum attribute to be used as the code.
EclipseLink and Hibernate understand this requirement, and provide proprietary solutions.
http://wiki.eclipse.org/EclipseLink/Examples/JPA/EnumToCode
http://stackoverflow.com/questions/2751733/map-enum-in-jpa-with-fixed-values
Is there any chance of standardising this in JPA 2.1?
Thanks
Andrew Ward