J'ai un probleme avec ma base (config) generee par Hibernate et je n'arrive pas a l'expliquer...
J'ai une classe entreprise et une classe client, sachant qu'un client possede une cle vers une entreprise.
Mon bean client est mappe de cette facon :
Il a donc en attribut une instance de classe Entreprise.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <hibernate-mapping> <class name="bean.Client" table="client" schema="public"> <id name="idclient" type="int"> <column name="idclient" /> <generator class="increment" /> </id> <many-to-one name="entreprise" class="bean.Entreprise" > <column name="id_ent" not-null="true" /> </many-to-one> ..
Si je veux ajouter un client, j'effectue :
Le probleme : Je met l'entreprise a jour avec les informations (en faisant bien attention que id_ent est bon), mais lorsque le bean entreprise est deja plein avant cette mise a jour, il m'ajoute l'ancienne entreprise, pas celle que je veux...pourtant tous les champs de client.Entreprise sont bons au moment de l'ajout...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Entreprise e = Context.getBean ("entreprise"); e.setInfo(); this.setEntreprise(e); HibernateUtil.ajouter(this);
Ma question : Que regarde Hibernate lorsqu'il remplit la base de donnee avec ce nouveau client ? Car le id_ent contenu dans l'entreprise n'est pas du tout celui ajoute dans la base !!
Mapping d'entreprise :
Merci !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <hibernate-mapping> <class name="bean.Entreprise" table="entreprise" schema="public"> <id name="idEnt" type="int"> <column name="id_ent" /> <generator class="increment" /> </id> <set name="clients" inverse="true"> <key> <column name="id_ent" not-null="true" /> </key> <one-to-many class="bean.Client" /> </set> ..
Partager