ObjectInputStream Probleme

SwingTänzer

Mitglied
Moin,

habe folgendes Problem: Ich versuche per

Code:
ObjectInputStream readSocket = new ObjectInputStream(sock.getInputStream());

den Stream zu erstellen. Habe Probeweise nur einen Integer Objekt drüber geschickt, klappte alles. Nun möchte ich gerne ein anderes Objekt benutzen. Seitdem ich das im Code stehen habe, geht das Programm aber nicht weiter als zu der oben genannten Zeile. Es kommt keine Fehlermeldung, nischt..

Nun meine Frage: Das mit dem Serialisieren des Objekt, was ich später hin und her schicken möchte,ist doch beider Erstellung des ObjectInputStreams noch nicht wichtig, oder sehe ich das falsch? Kommentiere die obere Zeile aus, läuft das Programm halt soweit bis der readSocket benötigt wird.

Kann mir vielleicht jemand helfen?

Gruß SwingTänzer
 
Hi!

Ausschnitt aus der api zum Konstruktor public ObjectInputStream(InputStream in):

"...This method will block until the corresponding ObjectOutputStream has written and flushed the header."

Bedeutet, beim Aufruf dieses Konstruktors wird der darunterliegende InputStream ausgelesen. Die Anwendung hängt also solange, bis der InputStream ausgelesen werden kann. In deinem Beispiel also solange, bis der Socket Daten empfängt.

Grüsse TrueSun
 
habe auch damit Probleme

Halli hallo,
ich habe auch das Problem mit dem ObjectInputStream. den ObjectInput - als auch den -OutputStream hatte ich im Konstrucktor meiner ClientKlasse initialisiert, da es so in einem Beispiel mit dem DataInputStream verfahren wurde, was auch prima funktioniert. Ich dachte, ich könnte das Problem lösen wenn ich in der run Routine meiner Client-Klasse initialisiere und mir den Socket als Member halte, jedoch muß ich feststellen, dass der Socket, der im Konstruktor brav initialisert wird in der run Routine aufu null steht.
irgendwie stoße ich hier auf meine Verständnisgrenze. Kann mich da mal jemand aufklären wie das zustande kommt und wie man gescheiter mit dem ObjectInputStream verfährt?

mit herzlichen Dank im Voraus,

Takidoso
 
Zurück