Bonjour à tous,
Voilà je réalise un chat en java et j'ai donc du coté de mon application serveur une arraylist pour répertorier tous les clients connectés au serveur
Mais quand je connecte un client il l'ajoute dans l'arraylist, ça va
Mais je ne parviens pas à accéder à ce client
Code :
- //contenu du Thread
- try {
- if(ns.ss.accept()!=null){
- Client c = new Client(ns.ss.accept()); // on crée un nouvel objet Client quand le serversocket reçoit une connexion et on lui passe le socket client créé
- clients.add(c); //j'ajoute le nouveau client dans l'arraylist
- System.out.println(clients.isEmpty()); // Je vérifie si la liste est vide
- Renvoie FALSE
- System.out.println(clients.contains(c));//je vérifie si la liste contient client
- Renvoie TRUE
- }
- //maintenant je veux lire les messages venant des clients
- if(!clients.isEmpty()){ //si l'arraylist n'est pas vide
- it = clients.iterator(); //itérateur pour parcourir l'arraylist
- Client element;
- Client element2;
- Message affiche;
- while(it.hasNext()){ //boucle pour parcourir l'arraylist
- element=(Client)it.next();//client actuel
- System.out.println(element);//j'essaie de voir si le client est bien là
- Renvoie NULL !
- affiche = element.getMessage();
- while(it.hasNext()){
- element2=(Client)it.next();
- element2.oos.flush();
- element2.oos.writeObject(affiche);
- element2.oos.close();
- }
- }
- }
|
Voilà j'ai annoté le code pour que vous compreniez le problème
J'ai bien redéfinit le toString de l'objet client pour pouvoir l'afficher sans probleme...
Est-ce que je parcoure bien mon arraylist?
Quelqu'un peut-il m'aider?
Merci d'avance
Message édité par Lou013 le 17-12-2007 à 21:28:54
---------------
[topic des lieux abandonnés] | "Sur HFR chacun a raison et les autres sont des cons"