Estou com um problema na utilização de Sockets para envio de um objeto. Apesar de ser possível acessar o servidor utilizando outros sockets (para, por exemplo, cadastro ou login), não estou consigo estabelecer uma conexão com este...
Por algum motivo, quando debugo o programa para verificar onde ocorre o erro, o programa é interrompido ao instanciar o ObjectInputStream na máquina cliente. Não é lançada nenhuma exceção, o programa apenas trava (fora da depuração também trava).
ObjectInputStream in;
ObjectOutputStream out;
boolean status;
int idHistoria;
Socket cliente;
public void Comunicacao(int id_Login, History historia) {
boolean statusEnvio;
try {
cliente = new Socket("127.0.0.1", 150);
in = new ObjectInputStream(cliente.getInputStream()); //Para aqui
out = new ObjectOutputStream(cliente.getOutputStream());
out.writeUTF(historia.getName());
out.writeUTF(historia.getSynopsis());
out.writeUTF(historia.getAuthor());
out.writeInt(id_Login);
out.writeObject(historia);
statusEnvio = in.readBoolean();
setEnvio(statusEnvio);
if(statusEnvio)
{
setIdHistoria(in.readInt());
}
in.close();
out.close();
cliente.close();
} catch (IOException stream) {
stream.printStackTrace();
}
}
ServerSocket server;
ObjectInputStream in;
ObjectOutputStream out;
Socket socket;
try {
server = new ServerSocket(150);
socket = server.accept();
in = new ObjectInputStream(socket.getInputStream());
out = new ObjectOutputStream(socket.getOutputStream());
System.out.println("Recebendo titulo");
String titulo = in.readUTF();
setTitulo(titulo);
System.out.println("Recebendo descricao ");
String descricao = in.readUTF();
setDescricao(descricao);
System.out.println("Recebendo idLogin");
int idLogin = in.readInt();
setIdLogin(idLogin);
System.out.println("Recebendo autor");
String autor = in.readUTF();
setAutor(autor);
try
{
System.out.println("Recebendo Objeto");
Object history = in.readObject();
setHistory(history);
}
catch(ClassNotFoundException e) {}
System.out.println("Conexão estabelecida com o cliente ");
}
catch(IOException socketServer) {}
}
Agradeço desde já pela ajuda.