Bonjour à tous,
Je me tire les cheveux depuis quelques heures à essayer de résoudre un probleme assez galere mais qui doit pourtant avoir une réponse simple.
Imaginons un objet de type Produit et un objet de type Garantie.
Produit a une propriété Garantie qui peut etre nulle ou alors avoir un objet garantie (relation (0,1)).
Garantie a une propriété Produit qui renvoie le produit qui lui est associé ou une valeur nulle (relation (0,1)).
Voici le mapping que j'ai fait :
Produit :
Code:
<class="Produit">
<many-to-one name="Garantie" column="Ref_IdGarantie" class="Garantie" />
</class>
Garantie :
Code:
<class="Garantie">
<one-to-one name="Produit" foreign-key="Ref_IdGarantie" class="Produit" />
</class>
Comme vous pouvez le constater, mes tables sont comme ceci :
Produit
---------
IdProduit
Ref_IdGarantie
Garantie
----------
IdGarantie
Le mapping fonctionne bien :
J'ai mes liaisons impecables, ajout, update ok, quand je supprime un produit ca suit derriere (le produit est supprimé mais la garantie reste puisque c'est ce que je recherche) par contre la suppression d'une garantie me provoque une exception de conflit avec la foreign key. En fait, j'aimerai pouvoir supprimer une garantie et que au niveau base de données cela me supprime la garantie et me mette un NULL dans les champs Ref_IdGarantie de mes produits mais je n'arrive pas à trouver le bon mapping pour cela ! auriez vous une idée svp ?
Merci d'avance
@+