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

Reply via email to