Hello!
Is there a way to persist an EnumSet easily with OpenJPA? I tried
with an externalizer:
@PersistentCollection
@Externalizer( "test.Shape.typesToString" )
@Factory( "test.Shape.typesFromString" )
@ElementType( String.class )
@Column( name="shape_types" )
private EnumSet<ShapeTypes> types;
When I try to run this, I get the following error message, which makes
me believe I am doing something wrong...
Caused by: <0.9.7-incubating fatal general error>
org.apache.openjpa.persistence.PersistenceException: Unable to create
a second class object proxy for abstract type "class
java.util.EnumSet". You must use a concrete type or a recognized
interface.
at
org.apache.openjpa.util.ProxyManagerImpl.toProxyableCollectionType(ProxyManagerImpl.java:320)
at
org.apache.openjpa.util.ProxyManagerImpl.newCollectionProxy(ProxyManagerImpl.java:191)
at
org.apache.openjpa.kernel.StateManagerImpl.newFieldProxy(StateManagerImpl.java:1571)
at
org.apache.openjpa.kernel.SingleFieldManager.proxy(SingleFieldManager.java:104)
at
org.apache.openjpa.kernel.StateManagerImpl.proxyFields(StateManagerImpl.java:2624)
at
org.apache.openjpa.kernel.PNonTransState.initialize(PNonTransState.java:44)
at
org.apache.openjpa.kernel.StateManagerImpl.setPCState(StateManagerImpl.java:213)
at
org.apache.openjpa.kernel.StateManagerImpl.commit(StateManagerImpl.java:919)
at
org.apache.openjpa.kernel.BrokerImpl.endTransaction(BrokerImpl.java:2194)
... 8 more
Thanks in advance!
Christian