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 :

PB session save(object)


Sujet :

Hibernate Java

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 47
    Points : 46
    Points
    46
    Par défaut PB session save(object)
    Bonjour,

    Lorsque je save mon objet, j'obtiens l'erreur suivante :

    violation de contrainte d'intégrité (BASE.FK_CLE) - clé parent introuvable

    voici mes objets JAVA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public Class A {
     private Long id;
     private String a_attribut1;
    }
     
    public Class B {
     private Long id;
     private String b_attribut1;
     private A b_attribut2;
    }
    mes mappings hibernates
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    <hibernate-mapping >
    	<class name="A" table="TAB_A" >
    		<id name="id" type="java.lang.Long" column="TAB_A_ID">
    			<generator class="sequence">
    				<param name="sequence">A_SEQ</param>
    			</generator>
    		</id>
    		<property name="a_attribut1" type="java.lang.String" column="Attribut1" />
    	</class>
    </hibernate-mapping >
     
    <hibernate-mapping >
    	<class name="B" table="TAB_B" >
    		<id name="id" type="java.lang.Long" column="TAB_B_ID">
    			<generator class="sequence">
    				<param name="sequence">B_SEQ</param>
    			</generator>
    		</id>
     
    		<many-to-one name="b_attribut2" class="A" cascade="save-update">
    			<column name="TAB_A_F_ID" />
    		</many-to-one>
     
    		<property name="b_attribut1" type="java.lang.String" column="attribut1" />
        </class>
    </hibernate-mapping>
    Code sur lequel j'ai une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    session = HibernateUtil.currentSession();
    Transaction tx = session.beginTransaction();
     
    B b = new B();
    A a = new A();
    b.setB_attribut1("test");
    a.setA_attribut1("test2");
    b.setB_attribut1(a);
     
    session.save(b);
    tx.commit();
    session.close();
    En fait mon hibernate essaie de sauvegarder de récupérer la clé id de A alors qu'il n'existe pas encore.

    comment faire pour que hibernate enregistre mon objet avant mon objet b.

  2. #2
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Je pense qu'il faut que tu fasse un session.save(a); avant ton session.save(b);

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 47
    Points : 46
    Points
    46
    Par défaut
    Merci pour ta réponse c'est ce que j'ai fait au final.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Save object avec relation n-n
    Par Sniper37 dans le forum Hibernate
    Réponses: 5
    Dernier message: 26/09/2008, 19h40
  2. Réponses: 6
    Dernier message: 15/08/2008, 12h09
  3. Probleme sur session.save
    Par tomy29 dans le forum Hibernate
    Réponses: 1
    Dernier message: 17/07/2008, 14h09
  4. [Hibernate]session.save ne marche pas au sein d'un loop
    Par ouafaa dans le forum Hibernate
    Réponses: 3
    Dernier message: 13/07/2006, 16h05
  5. [HIBERNATE] recuperer le session.save(.. .)
    Par MicroPuce dans le forum Hibernate
    Réponses: 2
    Dernier message: 24/06/2006, 09h17

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