Bonjour,

J'utilise Hibernate annotation. J'ai un pb sur une relation ManyToMany. C'est peut-être un problème par rapport au développeur mais j'ai un malfou à trouver une explication claire.
Alors voila j'ai 2 classes : User et Telechargement. Un User peut avoir plusieurs Telchargement etun Telechargement peut être affecté à plusieurs User (un manytomany quoi) leur création est indépendante. ensuite j'ai fait une page permettant d'affecter les relations dans les 2 sens. Mais malheureusement ca ne fonctionne que dans un seul ?
normal ?
une autre methode ou mauvais paramètrage ?

Merci d'avance. Julien C.

Mon code :

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
class User{
//...
	@ManyToMany
	public List<Telechargement> getTelechargements() {
		return telechargements;
	}
//...
}
 
 
class Telechargement{
//...
    @ManyToMany( mappedBy="telechargements" )
    public List<User> getUsers() {
        return users;
    }
//...
}
 
 
 
// Affectation des téléchargements à un utilisateur
// Je supprime toutes les relations et je l'ai recrée
// la ca fonctionne bien
User user = userManager.getUser( idUser );
user.getTelechargements().clear();
for (Telechargement telechargement : telechargements) {
	user.getTelechargements().add(telechargement);
}
user = userManager.saveUser(user);
 
 
 
// Affectation d'utilisateurs à un télécharment
// Je supprime toutes les relations et je l'ai recrée
// Et la ca ne fonctionne pas
Telechargement telechargement = telechargementManager.get( idTelechargement );
telechargement.getUsers().clear();
for (User user : users) {
	telechargement.getUsers().add(user);
}
telechargement = telechargementManager.save(telechargement);