Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipselink-users] What is the correct way to remove master-detail relation

Hi Leon,

   In JPA, to delete an object in a collection you need to remove it from the collection and then call entityManager.remove(..).  EclipseLink adds support for orphan management through a relationship defined as "private owned".  If you specify that a collection is private owned then removing an element from the collection and committing your transaction will cause it to be deleted on the database. 

   For more info see: http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_(ELUG)#How_to_Use_the_.40PrivateOwned_Annotation

   Shaun

Leon Derks wrote:
Hi Tim,

I already tried that, but couldn't get it working.
I will try it again.

Thank you.
Leon


Tim Hollosy wrote:
Leon,
Remove it from your list directly, and as long as you have
CascadeType.REMOVE set on your relationship it will remove it from the
database.

Tim

On Mon, Jun 2, 2008 at 12:02 PM, Leon Derks <leon.derks@xxxxxxxxxx> wrote:
 
Hello

I have the follwing Objects:

Product {
List<Characteristic> characteristics;
List<ImageInfo>imageInfos
}

Characteristic{
Product product;
}
ImageInfo{
Product product.
}

But what is the best way to remove a Characteristic object?

I prefer doing: entityManager.remove(characteristic);
But then the characteristic is still in the List in the Product. Why isn't
the entity cache automatically updated?
How can I clear the cache manually?

Leon


_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users

   



 

_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users

--


Oracle
Shaun Smith | Principal Product Manager, TopLink | +1.905.502.3094
Oracle Fusion Middleware
110 Matheson Boulevard West, Suite 100
Mississauga, Ontario, Canada L5R 3P4

Back to the top