Bonjour,
J'ai une architecture client/serveur par sockets. Pour transférer les informations entre le client et le serveur, j'utilise :
- La sérialsiation des objets
- ObjectInputStream et ObjectOutputStream pour émettre et récupérer
J'ai trois classes imbriquées
Je transmets depuis le client un objet de type uTraining deux fois en ayant modifié le contenu du Vector _idTrainers entre les deux transferts
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 public class uTraining implements Serializable { private Vector _sessions; // Vecteur de uTrainingSession ... } public class uTrainingSession implements Serializable { private Vector _days; // Vecteur de uTrainingDays ... } public class uTrainingDay implements Serializable { private Vector _idTrainers; // Vector de String ... }
Et voilà mon problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 uTraining myTraining = ... myObjectOutPutStream.writeObject(myTraining); // modification du contenu de _idTrainers, par exemple plus qu'un seul objet dans le Vector contre 2 précédemment. ... // Transfert à nouveau de myTraining myObjectOutPutStream.writeObject(myTraining);
Côté serveur, le contenu de _idTrainers n'a pas changé !(l'adresse de l'objet est le même d'après ce que j'ai constaté avec le debuggueur d'Eclipse)
J'ai bien vérifié côté client juste avant writeObject, il n'y a qu'un seul objet dans le Vector avant le 2ème envoi.
Merci d'avance pour votre aide
Partager