En principio, sí desconectases el cable y por tanto no se pudiese realizar la conexión, a la hora de crear el objeto in:
Debería lanzarte una excepción que por lo que veo capturarías y mostrarías la traza por consola.
Sí estableces la conexión y entonces desconectas el cable podría pasar esto:
Leyendo ahora sobre el método read de InputStream, he leido lo siguiente:
Así que en principio debería lanzarte de nuevo una excepción de entrada salida, pero veo que la capturas. ¿Estás seguro de que no muestra nada ni por consola ni el JDialog?. Después de lo que he leído lo único que se me ocurre es que se quede bloqueado esperando a que hayan datos disponibles.
Espero que alguien pueda enfocarte un poco mejor a la solución.
Saludos.
Código (java) [Seleccionar]
in = new BufferedReader(new InputStreamReader(socket.getInputStream(), "ISO-8859-1"), 100);
Debería lanzarte una excepción que por lo que veo capturarías y mostrarías la traza por consola.
Sí estableces la conexión y entonces desconectas el cable podría pasar esto:
Cita de: http://download.oracle.com/javase/7/docs/api/java/net/Socket.html#getInputStream()Under abnormal conditions the underlying connection may be broken by the remote host or the network software (for example a connection reset in the case of TCP connections). When a broken connection is detected by the network software the following applies to the returned input stream :-
- The network software may discard bytes that are buffered by the socket. Bytes that aren't discarded by the network software can be read using read.
- If there are no bytes buffered on the socket, or all buffered bytes have been consumed by read, then all subsequent calls to read will throw an IOException.
- If there are no bytes buffered on the socket, and the socket has not been closed using close, then available will return 0.
Leyendo ahora sobre el método read de InputStream, he leido lo siguiente:
Cita de: http://download.oracle.com/javase/7/docs/api/java/io/InputStream.html#read(byte[;, int, int)]This method blocks until input data is available, end of file is detected, or an exception is thrown.
Así que en principio debería lanzarte de nuevo una excepción de entrada salida, pero veo que la capturas. ¿Estás seguro de que no muestra nada ni por consola ni el JDialog?. Después de lo que he leído lo único que se me ocurre es que se quede bloqueado esperando a que hayan datos disponibles.
Espero que alguien pueda enfocarte un poco mejor a la solución.
Saludos.