Bonjour,
Après plusieurs heures de recherche sur ce forum et celui de Spring, j'ai décidé de vous demander un peu d'aide.
Imaginez le code suivant:
Code:
Message m1 = new Message("Message 1");
Message m2 = new Message("Message 2");
Set messages = new HashSet();
messages.add(m1);
messages.add(m2);
Person p1 = new Person()
p1.setName("Person 1");
p2.setMessages(messages)
Person p2 = new Person()
p2.setName("Person 2");
p2.setMessages(messages)
Set persons = new HashSet();
persons.add(p1);
persons.add(p2);
Group g = new Group();
g.setPersons(persons);
hibernate.save(g)
Maintenant lorsque je sauve le groupe en base (session.save(g)), les messages ne sont affectés qu'à l'objet Person p2.
Lorsque j'affiche le SQL généré par Hibernate: je vois qu'il fais un INSERT des messages pour p1 mais ensuite, il fait un UPDATE pour p2. Du coup je me retrouve avec 2 lignes au lieu de 4 dans la table (PERSONS_MESSAGES)
Existe-t-il une solution pour sauver les messages pour les 2 personnes ?