Hi alle zusammen!
Ich habe ein Problem mit meinem Server. Das glaube ich zumindest.
Mein Client sendet einen Request an den server. Wenn dieser den versucht zu lesen, hört er nie auf dies zu tun. Aber seht selbst:
in, out und _client werden danach im finally geschlossen
hier die readBytes funktion:
irgendwann (nachdem alle sachen geschickt worden sind, in meinen beispielen nur strings)
wartet er in Zeile 10.
Da nix mehr kommt, bleibt er da auch ewig stehen.
Auf der Client Seite kann ich den OutputStream noch nicht zu machen, da ich sonst eine Bad Socket Exception bekommen, wenn ich versuche den Response zu lesen.
Wisst Ihr was ich falsch mache?
Danke schonmal!
Ich habe ein Problem mit meinem Server. Das glaube ich zumindest.
Mein Client sendet einen Request an den server. Wenn dieser den versucht zu lesen, hört er nie auf dies zu tun. Aber seht selbst:
Java:
...
in = _client.getInputStream();
out = _client.getOutputStream();
byte[] request = readBytes(in);
if (null != _responder) {
out.write(_responder.respond(request));
}
...
hier die readBytes funktion:
Java:
private byte[] readBytes(InputStream in) throws IOException {
byte[] buffer = new byte[1024];
byte[] result = new byte[0];
int read = in.read(buffer);
while (read > 0) {
byte[] target = new byte[read + result.length];
System.arraycopy(result, 0, target, 0, result.length);
System.arraycopy(buffer, 0, target, result.length, read);
result = target;
read = in.read(buffer);
}
return result;
}
wartet er in Zeile 10.
Da nix mehr kommt, bleibt er da auch ewig stehen.
Auf der Client Seite kann ich den OutputStream noch nicht zu machen, da ich sonst eine Bad Socket Exception bekommen, wenn ich versuche den Response zu lesen.
Wisst Ihr was ich falsch mache?
Danke schonmal!