Hi Leute, ich weiß mal wieder nicht weiter.
Szenario: Ich fange nach den Ferien wieder mit dem Adk Klon für die Schule an. Bin dabei
die Client Server Kommunikation einzurichten. Die Clients flushen die position jeden frame auf den
server socket, dieser bastelt sich ne „private leinwand“ und zeichnet schön brav alle spieler auf dem panel.
Nun Folgendes: Wenn ich den client über localhost mit dem server verbinde, kein Problem.
(Der Client selbst sieht noch nur sich selbst, der server alle.)
Wenn ich den Client über localhost verbinde, Kein Problem, alles perfekt. (Ich teste momentan nur mit einem
einzigen Client.) Sobald ich aber, (ip forwarding ist noch von den letzten experimenten mit dem chat richtig eingstellt,
hab aber alles nochmal überprüft und mit nem minecraft server getestet), über die ip verbinden will, passiert etwas was ich absolut nicht nachvollziehen kann:
Der CLient läuft wie immer. Der ERSTE FRAME, sendet erfolgreich die position, die auf dem Server erfolgreich gezeichnet wird. Das wars. Danach passiert eine Zeit lang
nichts, der client läuft normal weiter. (Man kann die schlange bewegen.) Nach einer Zeit treten massenhaft „java.net.SocketException: Software caused connection abort: socket write error“ fehler auf, auf der CLIENT SEITE. Der Server bleibt bei dem einen kästchen, das er beim aller ersten frame gezeichnet hat. Fehler kommen nicht.
Nun, im Anhang sind noch die Screenshots, oben der Server wie er richtig laufen sollte, unten wie er falsch läuft. Ich poste erstmal keinen Code, denn er funzt mit localhost
ja perfekt, (in dem bezug) und ausserdem ähnelt der code sehr dem, den ich damals beim chat verfasst hatte, der ja auch einwandfrei läuft.
Nur die Zeilen in denen die write ex auftritt:
socketWriter.write(player.getLocation() + "
");
socketWriter.flush();
aber das ist ja klar. getloc ist ein string, write sind alle richtig eingerichtet pi pa po.
Hat jemand eine Ahnung?
*** Edit ***
Jetzt hab ich das ganze nochmal gestartet, und währen ich den post hier geschrieben habe laufen gelassen. das programm ist zwar gefreezed, aber es kamen keine exceptions. jetzt versteht ich gar nichts mehr. (natürlich über die ip, nicht localhost)
*ausserdem ich wieder bilder vergessen tu ^^