I was able to overcome this issue by setting the following OpenJPA property
openjpa.Compatibility=CheckDatabaseForCascadePersistToDetachedEntity=*true* Thanks, Waruna On 20 June 2012 12:31, Waruna Ranasinghe <[email protected]> wrote: > Hi all, > > I tried to upgrade the OpenJPA version to 2.2.0. > > Some of the tests get failed printing following. It would be great if you > can shed some light on how to fix this issue. > > <openjpa-2.2.0-wso2v1-r128097:129108M nonfatal user error> > org.apache.openjpa.persistence.InvalidStateException: Encountered unmanaged > object "org.apache.juddi.model.BusinessEntity@5d17bf94" in life cycle > state unmanaged while cascading persistence via field > "org.apache.juddi.model.BusinessService.businessEntity" during flush. > However, this field does not allow cascade persist. You cannot flush > unmanaged objects or graphs that have persistent associations to unmanaged > objects. > Suggested actions: a) Set the cascade attribute for this field to > CascadeType.PERSIST or CascadeType.ALL (JPA annotations) or "persist" or > "all" (JPA orm.xml), > b) enable cascade-persist globally, > c) manually persist the related field value prior to flushing. > d) if the reference belongs to another context, allow reference to it by > setting StoreContext.setAllowReferenceToSiblingContext(). > FailedObject: org.apache.juddi.model.BusinessEntity@5d17bf94 > at > org.apache.openjpa.kernel.SingleFieldManager.preFlushPC(SingleFieldManager.java:786) > at > org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:621) > at > org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:589) > at > org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:505) > at > org.apache.openjpa.kernel.StateManagerImpl.preFlush(StateManagerImpl.java:2982) > at org.apache.openjpa.kernel.PNewState.beforeFlush(PNewState.java:40) > at > org.apache.openjpa.kernel.StateManagerImpl.beforeFlush(StateManagerImpl.java:1054) > at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2112) > at org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2072) > at > org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1990) > at > org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:81) > at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1514) > at > org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:933) > at > org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:570) > at > org.apache.juddi.api.impl.UDDIPublicationImpl.saveService(UDDIPublicationImpl.java:539) > at > org.apache.juddi.v3.tck.TckBusinessService.saveService(TckBusinessService.java:141) > at > org.apache.juddi.v3.tck.TckBusinessService.saveJoePublisherService(TckBusinessService.java:60) > at > org.apache.juddi.subscription.SubscriptionNotifierTest.setup(SubscriptionNotifierTest.java:72) > > P.S. it works fine, if I set the OpenJPA version to 2.0.0 > > Thanks in advance, > Waruna > -- > ----------------------------------------------------- > Regards, > Waruna Ranasinghe > > www.wso2.com - "Lean . Enterprise . Middleware" > > blog: http://warunapw.blogspot.com > twitter: http://twitter.com/warunapww > http://lk.linkedin.com/in/waruna > www.facebook.com/waruna.ranasinghe > > -- ----------------------------------------------------- Regards, Waruna Ranasinghe www.wso2.com - "Lean . Enterprise . Middleware" blog: http://warunapw.blogspot.com twitter: http://twitter.com/warunapww http://lk.linkedin.com/in/waruna www.facebook.com/waruna.ranasinghe
