-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 
Author Message
 Post subject: Problème : Insertion/Update/Supression sur une cascade
PostPosted: Thu Aug 12, 2010 4:04 am 
Newbie

Joined: Tue Feb 24, 2009 4:28 am
Posts: 2
Bonjour,

Je rencontre des difficultés pour insérer/mettre à jour/supprimé des éléments en base via des cascades.
A noter que j'utilise Hibernate 2.1.8.

Mon but :

Je dispose d'un objet Programme qui contient un set d'objet Controle (assoc bidirectionnelle via table de liaison ProgrammeCtl) :
Un Controle dispose ensuite de plusieurs Set d'objet (one-to-many) comme des Themes ou des Actions.

Dans mon traitement je suis ammené à créer/modifier/supprimer des Contrôles.
Je récupère dans le Set de mon objet Programme les Controles qui m'interesse (sauf dans le cas de la création ou je rajoute mon Controle à créé dans le Set).
Pour la suppression : je supprime mon Controle du Set.
Pour la modification :
Pour modifier les Set associé à mon Controle (Themes, Actions, ...) je créé un nouveau Set et je reaffecte les éléments issue d'un formulaire Web. J'obtiens donc un Set avec les éléments à jours que ce soit pour l'ajout la suppression ou la modification.
A la fin j'update mon Programme et je souhaite donc que tous les changements opérés ce répercute, ce qui n'est au moins pas le cas pour les Set de mon contrôle.


Voici mon mapping (une partie) :
Programme.hbm.xml :
Code:
   
      <!-- La liste des ControleInscrits associes au programme  -->
      <!-- assoc bidirectionnelle -->
      <set name="ctlInscrits" lazy="true" inverse="true" cascade="all">
           <key column="GT_PG_ID"/>
           <one-to-many class="ProgrammeCtl" />
                 </set>


ProgrammeCtl.hbm.xml :
Code:
   
      <!-- Le programme -->
      <many-to-one name="programme"
               column="GT_PG_ID"
               class="Programme"
               cascade="none"
               not-null="true"
               outer-join="true"/>
       
      <!-- Les controles inscrits au programme -->
      <many-to-one name="controle"
               column="GT_CL_ID"
               class="ccomptes.sami.controle.metier.bean.Controle"
               cascade="save-update"
               not-null="true"
               outer-join="true"/>


Controle.hbm.xml
Code:
                <set name="programmeCtl" table="PROGRAMMECTL" lazy="true" outer-join="false" inverse="true" cascade="all">
         <key column="GT_CL_ID" />
         <one-to-many class="ccomptes.sami.programme.metier.bean.ProgrammeCtl" />
      </set>

                <set name="actions" table="ACTION" lazy="true" outer-join="false" cascade="all">
         <key column="AC_CL_ID" />
         <one-to-many class="ccomptes.sami.controle.metier.bean.Action" />
      </set>

      <set name="themes" table="THEME" lazy="true" outer-join="false" cascade="all">
         <key column="TH_CL_ID" />
         <one-to-many class="ccomptes.sami.controle.metier.bean.Theme" />
      </set>


Pouvez-vous me dire si le mapping vous semble correct ?
Où est mon erreur ?

Merci


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.