Fehler: ECONNRESET (Connection reset by peer)

GENiALi

GENiALi

Fortgeschrittenes Mitglied
11
Hallo

So langsam bin ich mit meinem Latein am Ende. Ich hole mir als erstes via DefaultHttpClient async die ID's von Records die ich runterladen muss. Die bekomme ich.

Gleich anschliessend will ich dann die einzelnen Objekte anhand der ID's laden. Das in einem neuen Thread, also auch Async. Aber schon bei der ersten ID bekomme ich hier (esponse = httpClient.execute(httpPost);) die folgende Exception. Mit Google bin ich bis jetzt nicht weiter gekommen. Weiss jemand was hier schief sein könnte?

[...]
07-03 15:30:09.164: E/PIT(3953): IOException
07-03 15:30:09.164: E/PIT(3953): java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)
07-03 15:30:09.164: E/PIT(3953): at libcore.io.IoBridge.maybeThrowAfterRecvfrom(IoBridge.java:542)
07-03 15:30:09.164: E/PIT(3953): at libcore.io.IoBridge.recvfrom(IoBridge.java:506)
07-03 15:30:09.164: E/PIT(3953): at java.net.PlainSocketImpl.read(PlainSocketImpl.java:488)
07-03 15:30:09.164: E/PIT(3953): at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:46)
07-03 15:30:09.164: E/PIT(3953): at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:240)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:103)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:191)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.conn.DefaultResponseParser.parseHead(DefaultResponseParser.java:82)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:174)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:180)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:235)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.conn.AbstractClientConnAdapter.receiveResponseHeader(AbstractClientConnAdapter.java:259)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:279)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:121)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:428)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
07-03 15:30:09.164: E/PIT(3953): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
07-03 15:30:09.164: E/PIT(3953): at ch.leuchterag.pit.http.Post.execute(Post.java:118)
07-03 15:30:09.164: E/PIT(3953): at ch.leuchterag.pit.http.LoadRevierplan.saveEventLocal(LoadRevierplan.java:114)
07-03 15:30:09.164: E/PIT(3953): at ch.leuchterag.pit.http.LoadRevierplan.access$0(LoadRevierplan.java:98)
07-03 15:30:09.164: E/PIT(3953): at ch.leuchterag.pit.http.LoadRevierplan$1.run(LoadRevierplan.java:78)
07-03 15:30:09.164: E/PIT(3953): at java.lang.Thread.run(Thread.java:856)
07-03 15:30:09.164: E/PIT(3953): Caused by: libcore.io.ErrnoException: recvfrom failed: ECONNRESET (Connection reset by peer)
07-03 15:30:09.164: E/PIT(3953): at libcore.io.Posix.recvfromBytes(Native Method)
07-03 15:30:09.164: E/PIT(3953): at libcore.io.Posix.recvfrom(Posix.java:131)
07-03 15:30:09.164: E/PIT(3953): at libcore.io.BlockGuardOs.recvfrom(BlockGuardOs.java:164)
07-03 15:30:09.164: E/PIT(3953): at libcore.io.IoBridge.recvfrom(IoBridge.java:503)
07-03 15:30:09.164: E/PIT(3953): ... 21 more
[...]

Der ursprüngliche Beitrag von 16:01 Uhr wurde um 17:06 Uhr ergänzt:

OK. gefunden. Grund war ganz wo anders und gar nicht mal so einfach zu finden.

REST Service wird mir von einem WCF Service bereitgestellt. Das Objekt das zurückkommt hat ein paaar duzend Properties. Vier davon machten Probleme. So typische Probleme mit JSON.

private
DateTime m_EventClosed;
private
DateTime m_PlannedOpen;
private DateTime m_PlannedClosure;
private DateTime m_DTPlanifiedOpen;

Die Datenbankabfrage gibt unter anderm auch NULL zurück. Das führt dann zu einem für WCF ungültigen Datum. Lösung:

private DateTime? m_EventClosed;
private DateTime? m_PlannedOpen;
private
DateTime? m_PlannedClosure;
private DateTime? m_DTPlanifiedOpen;

Für alle die sich mit .NET auskennen. Nullable

Danach schmiert das Teil nicht mehr ab. Gefunden via Tracing des WCF Services.
 

Ähnliche Themen

D
Antworten
3
Aufrufe
460
jogimuc
J
M
Antworten
1
Aufrufe
1.035
wilco
W
J
Antworten
0
Aufrufe
557
JoEntwickler
J
Zurück
Oben Unten