¿Cómo puedo resolver el error EOFException ?

Iniciado por miltonprogramador, 2 Enero 2017, 16:30 PM

0 Miembros y 1 Visitante están viendo este tema.

miltonprogramador

Hola amigos, estoy haciendo una aplicación cliente servidor y enviando un mensaje con DataOutputStream del servidor al cliente:

Código (java) [Seleccionar]

this.mensaje = "logueado";
this.mensajeEnviado = new DataOutputStream(socket.getOutputStream());
this.mensajeEnviado.writeUTF(this.mensaje);


Esto al parecer funciona sin problemas... el error ocurre de lado del cliente al intentar leer el mensaje

Código (java) [Seleccionar]

this.mensajeRecibido = new DataInputStream(sk.getInputStream());
this.mensaje = this.mensajeRecibido.readUTF(); //--> esta es la línea que me genera el error


La excepción EOFException, no me es desconocida, entiendo que al intentar leer el final de un fichero pero en este caso no se resolverlo...

Es importante decirles que anterior a la transmisión de ese mensaje, se han hecho varios en la aplicación y todos han resultado satisfactorias. Pero con este no he podido..

Podrían darme una orientación por favor?... espero me ayuden pues mis últimos post me han dejado sin respuestas.
Gracias de antemano
Aprendiendo de los mejores se llega a ser uno de ellos...

ThinkByYourself

Esta librería es muy útil, se usa mucho en Java:

https://commons.apache.org/proper/commons-io/

A lo mejor te puede ayudar. Si no, puedes leerlo byte por byte y luego juntarlo. O poner en un try-catch acumulando los bytes, y hacer algo cuando te salte error.
No te voy a engañar.
Todos hemos sido programados para normalizar la psicopatía de las élites económicas y políticas, y para realimentar su patrón de ciega codicia.