bonjour,
je voudrait savoir si quelqu'un a une idée pour faire ce delete :
voici un bout du mapping .hmb
Code:
<class name="CrjurCrori" table="CRJUR_CRORI">
<composite-id>
<key-many-to-one class="Caisse" name="crJur" >
<column name="NO_CR_JUR" />
<column name="EX_CR_JUR" />
<column name="CD_STE_CR_JUR" />
</key-many-to-one>
<key-many-to-one class="Caisse" name="crOri" >
<column name="NO_CR_ORI" />
<column name="EX_CR_ORI" />
<column name="CD_STE_CR_ORI" />
</key-many-to-one>
</composite-id>
</class>
comme on peut le voir on a un objet
CrjurCrori qui est composé de 2 objet
Caisse ;
un objet
Caisse est composé d'une PK (id)
lui-meme composé d'un objet
Societe (dont le PK est CD_STE_CR_JUR) et de 2 String.
on veut supprimer tous les enregistrement pour EX_CR_JUR = 2006
en SQL j'aurait fait ca :
DELETE CRJUR_CRORI WHERE EX_CR_JUR = 2006 (
2006 etant un parametre )
donc une requette à 2 francs ( heu! 0.3€ ) et bien impossible a ecrir en HQL j'ai testé ceci :
Code:
delete CrjurCrori where crJur.id.exCr = :exGener
avec un executeUpdate() mais rien a faire ca provoque une erreur :
Quote:
org.hibernate.QueryException: could not resolve property: id.exCr of: fr.groupama.ads.biz.beans.valueObjects.CrjurCrori [delete CrjurCrori where crJur.id.exCr = 2006]
a noter que
Code:
select CrjurCrori where crJur.id.exCr = :exGener
fonctionne bien
si quelqu'un à une idée, merci d'avance