IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

[Hibernate] mise à jour des éléments des détails


Sujet :

Hibernate Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut [Hibernate] mise à jour des éléments des détails
    Bonjour,

    J'ai fais quelques essais avec Hibernate et les relations maitre-détails. J'ai représenté une relation 0..* avec un Set et j'ai mis l'attribut cascade pour ce set à "all". Lorsque je rajoute des éléments Détails dans le set, et que je sauvegarde le Maitre, les Détails sont bien créés dans la base. Pour la mise à jour d'un champ du Détail ça marche aussi. Par contre si je supprime un détail du set, ou que je vide le Set, j'attendais qu'il répercute les modifications en supprimant des tuples de Details. hors ce n'est pas le cas. Rien ne se passe en fait tant que je ne supprime pas directement les Details. Est ce que c'est normal?

  2. #2
    Membre expert
    Avatar de moritan
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2005
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2005
    Messages : 687
    Points : 3 135
    Points
    3 135
    Par défaut
    normalement le cascade all fait que si tu supprime le maitre il supprime les détails.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut
    La supression en cascade fonctionne en fait. Si je supprime le maitre ça supprime un détail. Si je supprime un détail de façon explicite ça marche aussi. Ce qui ne marche pas c'est si je retire un Détail du Set et que je compte sur la mise à jour du Maitre pour supprimer le Détail retiré (je sais pas si je suis bien clair là).

  4. #4
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    A priori on a le même problème,
    Je crée un père et des fils, la cascade me permet de supprimer automatiquement les fils lors de la suppression du père mais pas l'inverse.
    Ce que je voudrais savoir c'est comment supprimer un fils du père sans passer par ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
            int idPos = fils.getPere().getFils().indexOf(fils);
            fils.getParent().removeFils(idPos);
            filsService.supprimer(fils);

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut
    Oui c'est effectivement le même problème.

  6. #6
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Allez un petit up pour un pb que vous avez sans doute déja rencontré ...

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Points : 223
    Points
    223
    Par défaut
    As tu bien redéfinis les methodes equals et hashcode de tes beans persistants ?

  8. #8
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut idem
    Petit Up car j'ai le même problème

    Quelqu'un a une idée ?

    Merci

  9. #9
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    D'après xv-mnt il faut les supprimer explicitement

    source : http://www.developpez.net/forums/sho...d.php?t=278200

  10. #10
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/03/2009, 15h01
  2. Thread problème de mise en pause dans des éléments Swing
    Par Balbuzard dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 25/08/2008, 09h54
  3. Réponses: 1
    Dernier message: 22/07/2008, 15h25
  4. Mise à jour en temps des réel des données du Data Warehouse
    Par Reskibil dans le forum Microsoft BI
    Réponses: 8
    Dernier message: 27/03/2008, 09h38
  5. [OpenOffice] Mise à jour OOo - perte des dicos
    Par SLE dans le forum OpenOffice & LibreOffice
    Réponses: 2
    Dernier message: 11/05/2007, 10h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo