Hi ho
So nach sehr langem suchen versuche ich es nun auf diesem weg.
ich schicke per client server verbindung ein Object namen tank an server.
Danach versuche ich zu erfragen was der Server bekommen hat.
Dies klappt, aber wenn sich variablen dieses Objects ändern und ich wieder dies an den
Server schicke , bekommt der Server wieder das gleiche Object mit den selben Variablen.
bzw: ich empfange nur einmal das Object, wenn ich nochmal was schicke kommt das selbe an , ich bin ratlos.
hier mein server
JAVA
/JAVA
meine Client methode
im Client passt auch noch alles
wäre echt super , wenn mir jemand helfen kann
So nach sehr langem suchen versuche ich es nun auf diesem weg.
ich schicke per client server verbindung ein Object namen tank an server.
Danach versuche ich zu erfragen was der Server bekommen hat.
Dies klappt, aber wenn sich variablen dieses Objects ändern und ich wieder dies an den
Server schicke , bekommt der Server wieder das gleiche Object mit den selben Variablen.
bzw: ich empfange nur einmal das Object, wenn ich nochmal was schicke kommt das selbe an , ich bin ratlos.
hier mein server
JAVA
Java:
import java.io.*;
import java.net.*;
import java.util.*;
public class Server {
ServerSocket serverSocket;
Socket socket;
LinkedList<Socket> sockets;
int cnt = 0;
LinkedList<String> namen = new LinkedList<String>();
public Server()
{
sockets = new LinkedList<Socket>();
try {
serverSocket = new ServerSocket(1234);
while (true) {
socket = serverSocket.accept();
System.out.println("verbunden");
++cnt;
sockets.add(socket);
new EchoClientThread("ClientThread:" + cnt, socket);
}
} catch (IOException e) {
}
}
class EchoClientThread extends Thread {
private String name;
private Socket socket;
ObjectOutputStream os;
ObjectInputStream is;
public EchoClientThread(String name, Socket socket) {
System.out.println("echo client erstellt");
this.name = name;
this.socket = socket;
try {
os = new ObjectOutputStream(socket.getOutputStream());
is = new ObjectInputStream(socket.getInputStream());
this.start();
} catch (Exception e) {
System.out.println("fehler0" + e.getLocalizedMessage());
}
}
public void run() {
try {
while (true) {
Tank tank = new Tank(2, 2, 2, 2, 2);
tank = (Tank) is.readObject();
System.out.println("echothread liest" + tank.x);
}
} catch (Exception e) {
System.out.println("fehler server ende "
+ e.getLocalizedMessage());
}
}
}
public static void main(String args[]) {
try {
Server server = new Server();
} catch (Exception e) {
}
}
}
meine Client methode
Java:
public void senden(Tank t) {
try {
os.writeObject(t);
} catch (Exception e) {
System.out.println("fehler client " + e.getLocalizedMessage());
}
}
im Client passt auch noch alles
wäre echt super , wenn mir jemand helfen kann