# Problem bei Objekt senden von server zu client



## Guest (29. Mrz 2007)

Hi!
Also ich bin gerade dabei ein Spiel zu programmieren und dabei müssen Objekte vom client zum server und umgekehrt gesendet werden. das senden von Client zum server klappt soweit auch ganz gut, aber wenn der client empfangen soll, bricht er mit ner IOException ab.
Das Verbinden von Client zu Server erfolgt erfolgreich.
Weis jemand Rat???

Der Client-Code

```
Socket server = new Socket("localhost", 3700)

	private void sendData(Source_Daten daten){
		try{
			ObjectOutputStream out = new ObjectOutputStream(
									 new BufferedOutputStream(
									 this.server.getOutputStream()));
			out.writeObject(daten);
			out.close();
			horchen = true;
		}catch(Exception e){
		}
	}


	private void getData(){
		Source_Daten temp = null;
		Object getObj = null;
		try{
			ObjectInputStream in = new ObjectInputStream(
								   new BufferedInputStream(
								   server.getInputStream()));
			getObj = (Source_Daten)in.readObject();
			in.close();
		}catch (Exception e){
		}
		try{
			temp = (Source_Daten)getObj;
		}catch(Exception e){
		}
        }
```

Der Server-Code

```
Socket[] spieler;


	private void sendData(Source_Daten daten){
		try{
			ObjectOutputStream out = new ObjectOutputStream(
									 new BufferedOutputStream(
									 spieler[0].getOutputStream()));
			out.writeObject(daten);
			out.close();
		}catch(Exception e){}
	}
	
	private void getData(){
		Source_Daten temp = null;
		Object getObj = null;
		try{
			ObjectInputStream in = new ObjectInputStream(
								   new BufferedInputStream(
								   spieler[0].getInputStream()));
			getObj = (Source_Daten)in.readObject();
			in.close();
		}catch (Exception e){}
		try{
			temp = (Source_Daten)getObj;
		}catch(Exception e){}
       }
```


----------



## Guest (29. Mrz 2007)

Ein kleiner nachtrag:
So empfängt der server keine daten...
HILFEEEEE ???:L


----------



## Guest (29. Mrz 2007)

OK, hat sich erledigt, wenn ich den BufferedOutput/InputStream wegnehme klappts... 
Sorry.............


----------



## muddin (29. Mrz 2007)

Schade, dass der Verfasser dieser Frage keine Antwort abgewartet hat. Jetzt wird er nie wieder in seinem Leben
einen BufferedInput/OutputStream benutzen...weil es ja nicht geht  :bae: 
Naja, vielleicht liest er es ja doch noch  :

out.writeObject(daten);
out.flush();    <-------- das fehlt!
out.close(); 

mfg,
Muddin


----------



## Gast (1. Apr 2007)

Danke, hab nochmal reingeschaut und es natürlich gleich ausprobiert!
und es klappt


----------



## Guest (7. Apr 2007)

Hey Leute hab mal so ne Frage...


```
private void sendData(Source_Daten daten){
```

.. das geht anscheinend.. 
aber was ist, wenn meine "Kommunikationsdaten" ein Object einer selbstdefinierten "größeren" Klasse ist, 
funkt das?



```
public class Player {
   String name; 
   String pick;
   
   int[] stack; //Die karten, die er gezogen hat
   
   int stake;  //Spieleinsatz
   int bank;
   int points; //Punkte der Karten
}
```

also so zirka


----------



## Guest (7. Apr 2007)

hat sich erledigt, funktioniert anscheinend... nur sollte die klasse 
	
	
	
	





```
implements Serializable
```
sein


----------

