Bonjour,
J'ai un petit problème de mise à jour de mes données.
J'ai un objet "declaration" qui contient une liste d'objet "surface"
en java ça donne ça :
avec le mapping suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public class Declaration { --- /** Surfaces */ private List<Surface> surfaces; ... }
declaration.hbm.xml
surface.hbm.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <list lazy="false" name="surfaces" table="surfaces" cascade="all-delete-orphan" inverse="true"> <key foreign-key="surfaces_id_declaration_fkey"> <column name="id_declaration" not-null="true" /> </key> <list-index column="idx"></list-index> <one-to-many class="Surface" /> </list>
en dao je fais un simple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <hibernate-mapping package="bean"> <class name="Surface" table="surfaces_declarations" lazy="false"> <id name="idSurface" type="java.lang.String" column="id_surface"> <generator class="assigned" /> </id> ... <property generated="never" lazy="false" name="idDecLoc" type="java.lang.String"> <column name="id_declaration" /> </property> </class> </hibernate-mapping>
Mon problème est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part getHibernateTemplate().saveOrUpdate(declaration);
Quand je crée une déclaration et ses surfaces, pas de problème
quand je met à jour une déclaration en lui ajoutant des surfaces toujours pas de problème
quand je modifie des surfaces dans une déclaration, toujours aucun problème.
Par contre, quand je supprime une surface dans une déclaration, la modification n'est pas répercutée en base de données.
Quelqu'un a-t-il une idée d'où peut provenir mon problème ?
Merci d'avance de votre aide.
Partager