Google App Engine - DELETE JPQL-Abfrage und Kaskadierung

8

Ich habe festgestellt, dass die untergeordneten Elemente von PersistentUser nicht gelöscht werden, wenn die folgende JPQL-Abfrage verwendet wird. Die Kinder werden jedoch gelöscht, wenn ich entityManager.remove(object) führe. Wird das erwartet? Warum führt die folgende JPQL-Abfrage auch kein kaskadiertes Löschen durch?

%Vor%     
Taylor Leese 08.06.2010, 08:17
quelle

1 Antwort

9

Dies wird erwartet, die JPQL-Löschoperation kaskadiert nicht. Aus der JPA 1.0 Spezifikation:

  

4.10 Massenaktualisierungs- und Löschoperationen

     

(...)

     

Ein Löschvorgang gilt nur für   Entitäten der angegebenen Klasse und   seine Unterklassen. Es kaskadiert nicht   zu verwandten Entitäten .

    
Pascal Thivent 08.06.2010, 12:15
quelle