Foros del Web » Programación para mayores de 30 ;) » Java »

Ayuda, Java - Sockets

Estas en el tema de Ayuda, Java - Sockets en el foro de Java en Foros del Web. Buenos días de nuevo foreros !!! Verán, estoy haciendo un pequeño cliente de Sockets en Java para aprender un poco este lenguaje y tengo un ...
  #1 (permalink)  
Antiguo 28/01/2008, 03:58
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Ayuda, Java - Sockets

Buenos días de nuevo foreros !!!

Verán, estoy haciendo un pequeño cliente de Sockets en Java para aprender un poco este lenguaje y tengo un pequeño problema.

Resulta que mi pequeño cliente, se conecta perfectamente al servidor, y envia perfectamete datos al servidor (hecho en .NET, jeje)

Ok, hasta aqui perfecto, sin embargo, no estoy consiguiendo recibir los datos del servidor (El servidor los envia correctamente, ya que otro cliente tb hecho en .net si lo recibe).


Les pongo el codigo relevante a la escucha:
Código:
public class ClsPrincipal extends javax.swing.JFrame 
{
	private void btnConectarMouseClicked(MouseEvent evt)
	{		
		try 
		{
			objSocket.connect(objDireccion);
                        //Esto no es relevante, ya que es para enviar al servidor
			objStreamWrite = objSocket.getOutputStream();

                        //Aqui es donde esta lo suyo...
			ClsHebra objEscucha = new ClsHebra();
			objEscucha.start();
		} catch (Exception e)
		{}
	}


	class ClsHebra extends Thread
	{
			public void Run()
			{
				try
				{
					while(true)
					{
						BufferedReader entrada = new BufferedReader( new InputStreamReader(objSocket.getInputStream() ) );
						txtCaja.setText(entrada.readLine() + " [PRUEBA]");
					}
				} catch (Exception e) {
				}
			}
	}
}

Como ven, en una Hebra tengo un bucle infinito para ir recogiendo constantemente los datos enviados por el servidor, sin embargo, parece como si nunca entrara por ahí.... De hecho en la caja de texto no me pone ni "[PRUEBA]"


En fin, si pueden ayudarme se lo agradecería.


Saludos,
Carlos Hevia Colinas.
__________________
Charlie.

Última edición por chcma; 28/01/2008 a las 04:14
  #2 (permalink)  
Antiguo 28/01/2008, 08:36
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Re: Ayuda, Java - Sockets

Nadie en este foro puede decirme como trabajan las hebras y por que me está fallando algo tan básico ???
__________________
Charlie.
  #3 (permalink)  
Antiguo 29/01/2008, 03:07
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Re: Ayuda, Java - Sockets

Bueno, si a alguien le interesa, el fallo por el que la HEBRA no funcionaba es por que el método Run() debe ir en minusculas: run()

Sigo sin recoger datos, pero la Hebra al menos funciona.

Un saludo.
__________________
Charlie.
  #4 (permalink)  
Antiguo 29/01/2008, 09:05
Avatar de pyanqn  
Fecha de Ingreso: noviembre-2005
Mensajes: 331
Antigüedad: 18 años, 5 meses
Puntos: 8
Re: Ayuda, Java - Sockets

deberias probar si se estan recuperando los datos, es decir trata de imprimir por consola, talvez se trate de un problema de refresco de pantalla!?

System.out.println(entrada.readLine() + " [PRUEBA]");
  #5 (permalink)  
Antiguo 29/01/2008, 09:08
Avatar de pyanqn  
Fecha de Ingreso: noviembre-2005
Mensajes: 331
Antigüedad: 18 años, 5 meses
Puntos: 8
Re: Ayuda, Java - Sockets

mira tambien: http://www.forosdelweb.com/1682256-post42.html
  #6 (permalink)  
Antiguo 29/01/2008, 09:27
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Re: Ayuda, Java - Sockets

Hola pyanqn, ya esta resuelto gracias. Era lo que dije, el método run() no deberia estar escrito con la R en mayúsculas.

Era por eso, tampoco me escribia en la consola.
__________________
Charlie.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:16.