Fala Povo!
Aprendi como enviar do cliente para o servidor um objeto, e como fazer o servidor enviar para o cliente um objeto.
Só que o Cliente fica travado.
[EDITADO!] Consegui destravar o cliente, mas o servidor quando vai enviar de volta o teste modificado, dá um erro "socket write error"
Vou postar todo o código pra que possam me ajudar.
Segue!
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws IOException, ClassNotFoundException {
Teste teste = new Teste();
teste.head = "Cabeçalho";
Socket client = new Socket("127.0.0.1", 7001);
ObjectOutputStream output = new ObjectOutputStream(client.getOutputStream());
ObjectInputStream input = new ObjectInputStream(client.getInputStream());
output.flush();
output.writeObject(teste);
output.flush();
output.close();
Teste testeModificado = (Teste) input.readObject();
System.out.println(testeModificado.head);
}
}
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) throws IOException, ClassNotFoundException {
ServerSocket server = new ServerSocket(7001);
Socket connection = server.accept();
ObjectInputStream input = new ObjectInputStream(connection.getInputStream());
ObjectOutputStream output = new ObjectOutputStream(connection.getOutputStream());
output.flush();
Teste teste = (Teste) input.readObject();
System.out.println(teste.head);
teste.head = "Cabeçalho Modificado";
output.writeObject(teste);
output.flush();
output.close();
}
}
import java.io.Serializable;
@SuppressWarnings("serial")
public class Teste implements Serializable {
public String head;
}
