OutputStream freigeben

theindra

Mitglied
Hi!
Ich ha folgendes Problem:

Code:
private Socket client;
....
ObjectOutputStream oos = new ObjectOutputStream(client.getOutputStream());
oos.writeObject(obj);

so schicke ich ein Objekt auf einen Client.
Ich kommunizieren mit dem Client aber über PrintReader und einen BufferedReader:

Code:
private PrintWriter 	out = new PrintWriter(client.getOutputStream(),true);
private BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));

also ich sage dem Server das ich ihn ein Objekt schicke und dann schicke ich im mit dem ObjectOutputStream das Objekt wenn ich das objekt geschickt habe und oos.close() aufrufe dann kann ich nachher mit dem Server über den Printwriter nicht mehr kommunizieren und wenn ich die close()-Methode nicht aufrufe dann funktionierts auf nicht.

Also muss ich den übergeben OutputStream vom ObjectOutputStream-Objekt freigeben aber nicht schließen wie mache ich das

Bitte um schnelle Hilfe
MFG TheIndra
 
Hallo!

Code:
private PrintWriter 	out = new PrintWriter(client.getOutputStream(),true);
private BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));

Warum schickst du einen ByteStream über einen Zeichenorientierten PrintWriter? Denke das ist keine gute Idee. Nimm odch besser einen ByteOrientierten Stream zum senden...

Schon mal die reset() Methode am ObjectOutputStream versucht?

Gruß Tom
 
Zum kommunizieren arbeite ich mit String-objekten die ich über printwriter schicke!
ObjectoutputStream verwendet ja keinen printwriter!

und die reset-methode funktioniert nichts
 
Zurück