Bonjour,

Je suis entrain de programmer un connexion par socket. mon client envoie divers information a mon serveur et ce dernier exécute différentes méthode selon le type d'objet reçu.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
Object objet = connexion.recevoir();//permet de recevoir les objet venant du client
if (objet instanceof StyledDocument)
         diffuserMessage((StyledDocument)objet);
else if (objet instanceof String)
         monAutreFonction((String)objet);
else if ........
         ..........
else
         System.out.println("objet inconnu");
Le problème est ma méthode "diffuserMessage" apparemment elle garde en mémoire le premier document qu'on lui a passer.
c-a-d:
S'il reçoit en premier le texte "salut". le serveur envoiera toujours à tout les client le message "salut" même si un autre client lui envoie un autre texte.

Voici sont code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
private void diffuserMessage(StyledDocument docMessage){
//listeConnexion est un vecteur qui contient la liste des buffers des clients
   for(int i=0;i<listeConnexion.size();i++){
        try {
               listeConnexion.get(i).envoyer(docMessage);//envoie le document à tout les client connecter
        } catch (IOException e) {
               // TODO Auto-generated catch block
              e.printStackTrace();
        }
   }
}
Je sais pas trop d'où sa peux venir...