You can persist a collection of enums by using <element> inside the <array> mapping:
Code:
<array name="jobTypes" cascade="save-update,persist">
<key column="JOB_ALERT_JOB_TYPE"/>
<list-index column="jobTypesOrder"/>
<element column="size" type="test.adam.enumcollection.JobType"/>
</array>
You don't need to provide a hibernate mapping file for the enum type. Hibernate serailizes the enum into a separate table holding the array data. The table name defaults to the array's property name but can be specified by a table attribute in the array element.
Mike