Bon, je suis un peu rouille en Java, mais je ne pense pas me tromper...
Dans ton code cote serveur, tu acceptes la connexion cliente, tu crees un nouveau thread auquel tu passe la connexion; a partir de la, le thread vit sa vie, mais le serveur aussi. Et la c'est le drame, tu fermes la connexion cote serveur.
Resultat, meme si ton thread a un objet clientSocket valide, la connexion sous-jacente a ete fermee par le serveur...
Resultat, retire la ligne "clientSocket.close();" de ton code serveur et laisse la gestion de cette action au thread vu que tu lui delegue justement la gestion de la connexion.
Si ton applis doit gerer un grand nombre de connexion, n'hesite pas a faire appel a un pool de thread plutot que d'en creer un nouveau a chaque fois et eventuellement crees un thread special pour 'nettoyer' les connexions en fin de vie (en gros qui se charge de fermer les sockets)
Je ne pense pas t'avoir induit en erreur, mais si c'est le cas, desole ![;) ;)](https://forum-images.hardware.fr/icones/wink.gif)
Message édité par mordicator le 03-03-2005 à 17:09:23