Je vous expose mon problème. Dans le cadre d'un projet je dois réaliser une communication client/serveur. Pour les besoins de l'application, j'ai besoin que le serveur broadcast un object (via sérialisation donc) à tous les clients connectés.
Cependant lors de la réception de l'objet, il arrive que j'obtienne l'Exception suivante :
Les ... représentant un nombre qui varie, surement le numéro du stream en question je suppose.
Je dis bien "il arrive", car l'exception n'arrive jamais au même moment. Des fois elle arrive dès le premier broadcast, des fois au bout du 5ème, du 7ème enfin bref je n'ai remarqué aucune régularité, mise à part le fait qu'elle survient tout le temps au bout d'une certaine durée (même en espaçant les broadcasts).
Au niveau architecture logicielle, côté serveur j'ai un Thread dédié au broadcast, et un Thread d'écoute.
Côté client j'ai un thread d'écoute.
J'ai effectué des recherches et je suis tombé sur : http://www.javamex.com/tutorials/io/St [...] ception.shtml
Le hic c'est qu'en testant la 1ère solution, c'est à dire en mettant un oos.close(); dans ma méthode sendMapToAll, j'ai le droit à un jolie SocketException : Socket Closed dans mon Thread d'écoute serveur au niveau de :
receivedMsg = _in.readLine();
Quant à la deuxième solution proposé, je le fait déjà dans mon code.
Bref je suis assez perdu, et je ne vois pas bien ce que je pourrais faire d'autre.
Je vous remercie d'avance pour votre aide !
Problème de désérialisation
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.