Foro de elhacker.net

Programación => Java => Mensaje iniciado por: miltonprogramador en 2 Enero 2017, 16:30 pm



Título: ¿Cómo puedo resolver el error EOFException ?
Publicado por: miltonprogramador en 2 Enero 2017, 16:30 pm
Hola amigos, estoy haciendo una aplicación cliente servidor y enviando un mensaje con DataOutputStream del servidor al cliente:

Código
  1. this.mensaje = "logueado";
  2. this.mensajeEnviado = new DataOutputStream(socket.getOutputStream());
  3. this.mensajeEnviado.writeUTF(this.mensaje);
  4.  

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

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

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


Título: Re: ¿Cómo puedo resolver el error EOFException ?
Publicado por: ThinkByYourself en 2 Enero 2017, 18:58 pm
Esta librería es muy útil, se usa mucho en Java:

https://commons.apache.org/proper/commons-io/ (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.