Hallo liebes Forum,
Ich habe eine Klasse "Message" und möchte ein Objekt dieser Klasse vom Server zum Client mittels ObjectOutputStream senden.
Klasse Message:
Server:
Client:
An sich ja relativ simpel, aber ich scheine irgendetwas zu übersehen, denn die Message kommt nicht an. Über Hilfe würde ich mich sehr freuen.
Ich habe eine Klasse "Message" und möchte ein Objekt dieser Klasse vom Server zum Client mittels ObjectOutputStream senden.
Klasse Message:
Java:
import java.io.Serializable;
@SuppressWarnings("serial")
public class Message implements Serializable {
int clientID;
public Message(int id){
this.clientID = id;
}
public int getID(){
return clientID;
}
}
Server:
Java:
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
static ServerSocket serverSocket;
static Socket socket;
static ObjectOutputStream oos;
public static void main(String[] args) {
Message testmsg = new Message(23);
try {
System.out.println("Starte Server...");
serverSocket = new ServerSocket(7777);
System.out.println("Server online.");
} catch (IOException e) {
System.out.println("Probleme mit Serverinitialisierung.");
}
try {
socket = serverSocket.accept();
oos = new ObjectOutputStream(socket.getOutputStream());
} catch (IOException e) {
System.out.println("Konnte Verbindung zu Client nicht herstellen.");
}
try {
oos.writeObject(testmsg);
} catch (IOException e) {
System.out.println("Fehler beim Senden der Nachricht.");
}
}
}
Client:
Java:
import java.io.IOException;
import java.io.ObjectInputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client {
static Socket socket;
static ObjectInputStream ois;
public static void main(String[] args) {
Message input = null;
try {
socket = new Socket("localhost", 7777);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
System.out.println("Konnte Verbindung zu Server nicht herstellen.");
}
try {
ois = new ObjectInputStream(socket.getInputStream());
} catch (IOException e) {
System.out.println("Inputstream konnte nicht aufgebaut werden.");
}
try {
input = (Message) ois.readObject();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Message ID: " + input.getID());
}
}
An sich ja relativ simpel, aber ich scheine irgendetwas zu übersehen, denn die Message kommt nicht an. Über Hilfe würde ich mich sehr freuen.