Community
Participate
Working Groups
It appears that the @Array annotation added in 2.3 only works for object-relational datatypes (structs). Given the following snippet: @Array @Column( name = "VALUE" ) List<Integer> values; This appears to create an ArrayMapping, which is desired, and it passes the values down to line 752 of AbstractCompositeDirectCollectionMapping, where it calls getDescriptor().buildFieldValueFromDirectValues(). However, the descriptor is of type RelationalDescriptor, which throws an exception when this is called (DescriptorException.normalDescriptorsDoNotSupportNonRelationalExtensions).
@Array is designed for ObjectRelational types. Depending on what you are trying to do here, you may want to file an enhancement request requesting the functionality you are looking for.
Essentially, I have a table column that is an array of integers. (This is in postgresql, by the way, using integer[] as a column type). From the code comments in the @Array class: "Arrays can contains [sic] basic types (VARCHAR) or other Struct types, and can be stored in a column or in a Struct type." So, either that documentation is incorrect, it is specific to Oracle, or it is not implemented as stated.
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink