Comme quoi, c'est utile de poster les mappings. Par contre, la prochaine fois essaie de mettre les propriétés sur une seule ligne lorsque c'est possible. Ça permet de voir plus de choses d'un coup sans scroller sur ton post :-).
A priori, en lisant rapidement, j'ai l'impression que tu as mappé le contraire de ce que tu veux:
Quote:
<many-to-one name="ordonnance" column="ORDONNANCE_ID" class="com.medescan.proto.model.Ordonnance" cascade="delete" lazy="no-proxy" not-null="true"/>
Là, tu dis qu'à la suppression d'un médicament, cascader la suppression vers l'ordonnance :-/.
C'est certainement pour ça que la doc indique qu'un cascade sur un many-to-one est très rare : ça indique en gros que la suppression d'un élément d'une collection implique la suppression du parent... À la réflexion, c'est vrai que j'ai du mal à voir un cas réaliste justifiant ce choix.
Le problème, c'est que j'ai l'impression que tu n'as pas la liste des médicaments d'une ordonnance dans ton objet Ordonnance, en tout cas dans ton mapping d'ordonnance je ne vois aucune collection mappée vers les médicaments. En l'occurrence, c'est alors justement celle-ci qui prendrait l'attribut de cascading.
Quelque chose du genre:
Code:
<set name="medicaments" cascade="all,delete-orphan" inverse="true">
<one-to-many class="Medicament">
</set>