Witam.
Piszę sobie mały serwer opart na gniazdach. Niestety napotkałem pewien problem w momencie gdy chce przesłać obiekt program wywala bład. Wyjaśnię na kodzie:
/* Client.java */
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.ObjectOutput;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;
public class Client
{
private static final int PORT = 2000;
private static final String HOST = "192.168.1.4";
private static ObjectOutputStream outObject ;
public static void main(String[] args) throws IOException
{
try
{
Socket socket = new Socket(HOST, PORT);
System.out.println("Polaczono");
OutputStream outStream = socket.getOutputStream();
ObjectOutputStream out = new ObjectOutputStream(outStream);
final PrintWriter out2 = new PrintWriter(socket.getOutputStream(),true);
System.out.println("utworzono strumienie");
try {
Uzytkownik user = new Uzytkownik("Jan","Nowak","Siedlce",true,"JaNo","123","Wyszka",0);
MsgPack msg = new MsgPack(true, 1, 2, true, "krwotok", true, user);
System.out.println("wysyla");
out.writeObject(user); // jesli tylko jakiś object tu wsadze na konsole wywala komunikat blad/pomija komunikat wyslano
System.out.println("wyslano");
} catch (Exception e) {
System.out.println("blad");
}
System.out.println("zamykam");
out.close();
socket.close();
}
catch(Exception e)
{
System.err.println("Could not connect to "+HOST+":"+PORT);
System.exit(1);
}
}
}
Próbowałem już robić prostsze obiekty aby wykluczyć błąd, nawet objekt z jednym elementem wywalał.