Problemas para enviar array através de sockets

2 respostas
germano_pn

Seguinte… estou fazendo um jogo, um Reversi utilizando sockets.

Nele estou enviando um objeto “Tabuleiro” do servidor para o cliente, o servidor valida a jogada e outras coisas mais.

Um dos atributos deste objeto é um array int[][] contendo o valor das posicoes.

public class Tabuleiro implements Serializable{
	
	private int[][] tab;
	private String jogadorCorrente;
 	private int tamanho;
	public static String PRETO = "p";
	public static String BRANCO = "b";
	public static String VAZIO = "v";
	private boolean jogadaValida = false;
}

O problema é que depois de ter enviado uma vez para o cliente. Esse array permanece sempre o mesmo.
No momento de enviar o objeto… este array com certeza esta com valores direfentes da primeira vez que foi enviado.

public void enviaTabuleiro(Tabuleiro t) throws IOException{
		try {
			if(outPreta != null){
				outPreta.writeObject(t);	
				outPreta.flush();
			}
                } catch (IOException e) {
			throw new IOException(e.getMessage());
		}
}

Quando aos outros atribuitos do objeto eu não tenho nenhum problema, apenas o array.

Alguém já teve uma dificuldades dessas.
Já tentei usar writeUnshared(), mas dá na mesma

Espero que alguém possa me ajudar.

2 Respostas

vtdb11

Eu realmente ñ sei o q tá dando errado, mas tente usar um Vector<Integer[]> ou Vector<Vector>

isaiasa

favor, Informe o código usado no Objeto Tabuleiro, onde defini-se / declara-se o atributo int[][].

Acredito que o problema esteja no atributo e não na forma de envio, pois conforme você descreveu, os demais atributos estão se comportando da forma esperada.

Criado 30 de junho de 2007
Ultima resposta 2 de jul. de 2007
Respostas 2
Participantes 3