Java - Problema con Sockets

 
Vista:

Problema con Sockets

Publicado por luischo (1 intervención) el 15/09/2011 23:13:06
Hola a todoss

A ver si alguien me puede echar una manita:

Estoy intentando crear dos hilos (servidor) que se comuniquen con dos clientes, cada uno con su socket. Mi problema es al intentar enviar o recibir objetos a través del ObjectInputStream o el ObjectOutputStream.

Mi error es el siguiente:

En el servidor (donde usu1 y usu2 son sockets):

Hilo h1 = new Hilo(usu1, usu2);
Hilo h2 = new Hilo(usu2, usu1);

h1.start();
h2.start();

Cada hilo h tiene lo siguiente:

this.jug1 = jug1;
this.jug2 = jug2;
out1 = new ObjectOutputStream(jug1.getOutputStream());
out2 = new ObjectOutputStream(jug2.getOutputStream());
in1 = new ObjectInputStream(jug1.getInputStream());

public void run() {
try {
System.out.println("Enviando señal para empezar");
out1.write(1);
out1.flush();
System.out.println("Empezando");
System.out.println("paso 1");
while (jug2.isConnected()) {
Mensaje m = (Mensaje) in1.readObject();
System.out.println("paso 2");
out2.writeObject(m);
System.out.println("paso 3");
out2.flush();
}

Y obtengo el siguiente error:

java.io.StreamCorruptedException: invalid type code: AC
at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2463)

Buscando por internet decían que el error AC es que tengo duplicado el canal Stream, pero no sé donde, alguien me puede ayudar???
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder