Input Read Failed / Failed HTTP POST

View: New views
2 Messages — Rating Filter:   Alert me  

Input Read Failed / Failed HTTP POST

by Chris Braun :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm receiving occasional "Input read failed" exceptions from the dwr
servlet when my JS client polls for changes on the server.  While it
does not happen every time, it happens frequent enough that I was able
to get an Ethereal capture of the transactions.

It appears that somehow IE starts a POST request for the dwr call, but
never actually posts the data (it doesn't seem to happen on FF).  After
the ~10 second timeout, dwr does what it's supposed to and times out the
post request with the "Input read failed" exception.  Below is an
example of the captured HTTP transaction, the first request succeeds,
while the second never actually posts the 259 bytes it claimed it was
going to send, both were on the same socket and the socket is still
active after the exception is returned.  (The capture is from the client
side so it's hard to blame network now).

I am looking for people thoughts on what would cause the dwr request to
start but never actually post the data.

Thanks - Chris

Please excuse my awful depiction of an ethereal capture represented in
an email.

 > POST /oims/dwr/call/plaincall/ChangeQueueProxy.getChangedData.dwr
HTTP/1.1
 > Accept: */*
 > Accept-Language: en-us
 > Referer: http://sunfire:8089/oims/index.jsp#Reports
 > Content-Type: text/plain
 > UA-CPU: x86
 > Accept-Encoding: gzip, deflate
 > User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET
CLR 2.0.50727; .NET CLR 1.1.4322)
 > Host: sunfire:8089
 > Content-Length: 259
 > Connection: Keep-Alive
 > Cache-Control: no-cache
 > Cookie: gridSplitter_1=100; JSESSIONID=1853E064B9A2D7D780E970A0AD6B62A3
 >
 > callCount=1
 > page=/oims/index.jsp
 > httpSessionId=1853E064B9A2D7D780E970A0AD6B62A3
 > scriptSessionId=120DDA8CB4E0E5C4CDF77A1D6E5AADB0131
 > c0-scriptName=ChangeQueueProxy
 > c0-methodName=getChangedData
 > c0-id=0
 > c0-param0=number:58
 > c0-param1=number:552120343
 > batchId=400
= HTTP/1.1 200 OK
= Content-Type: text/javascript;charset=ISO-8859-1
= Content-Length: 145
= Date: Fri, 18 Apr 2008 21:51:41 GMT
= Server: Apache-Coyote/1.1
=
= //#DWR-INSERT
= //#DWR-REPLY
= var s0=[];
=
dwr.engine._remoteHandleCallback('400','0',{changeList:s0,currentChangeNumber:58,reqChangeNumber:58});
 > POST /oims/dwr/call/plaincall/ChangeQueueProxy.getChangedData.dwr
HTTP/1.1
 > Accept: */*
 > Accept-Language: en-us
 > Referer: http://sunfire:8089/oims/index.jsp#Reports
 > Content-Type: text/plain
 > UA-CPU: x86
 > Accept-Encoding: gzip, deflate
 > User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET
CLR 2.0.50727; .NET CLR 1.1.4322)
 > Host: sunfire:8089
 > Content-Length: 259
 > Connection: Keep-Alive
 > Cache-Control: no-cache
 > Cookie: gridSplitter_1=100; JSESSIONID=1853E064B9A2D7D780E970A0AD6B62A3
 >
= HTTP/1.1 200 OK
= Content-Type: text/javascript;charset=ISO-8859-1
= Content-Length: 332
= Date: Fri, 18 Apr 2008 21:52:11 GMT
= Server: Apache-Coyote/1.1
=
= //#DWR-REPLY
= if (window.dwr) dwr.engine._remoteHandleBatchException({
name:'org.directwebremoting.extend.ServerException', message:'Failed to
read input' });
= else if (window.parent.dwr)
window.parent.dwr.engine._remoteHandleBatchException({
name:'org.directwebremoting.extend.ServerException', message:'Failed to
read input' });


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@...
For additional commands, e-mail: users-help@...


RE: Input Read Failed / Failed HTTP POST

by mikewse :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

My first guess is this not a DWR issue but rather a browser issue.
The error message is a typical app server message (Tomcat 4.1?)
because nothing is received on the server's socket. DWR just
passes the message along. IIRC I've seen this when refreshing a
page that is still loading, causing the the ongoing sending of
data to be aborted.

I see the second (faulty) request appears 30 secs after the first.
Is this your choice of poll time? What happens if you try say 10
or 100 secs?

Also search for IE bugs applicable for your version. There are a
number of different bugs relating to different combinations of
parameters (encoding type, transfer encoding, etc).

If still unlucky, post more info about your software versions and
see if someone can help here.

Best regards
Mike Wilson

> -----Original Message-----
> From: Chris Braun [mailto:cbb@...]
> Sent: den 19 april 2008 02:07
> To: users@...
> Subject: [dwr-user] Input Read Failed / Failed HTTP POST
>
> I'm receiving occasional "Input read failed" exceptions from the dwr
> servlet when my JS client polls for changes on the server.  While it
> does not happen every time, it happens frequent enough that I
> was able
> to get an Ethereal capture of the transactions.
>
> It appears that somehow IE starts a POST request for the dwr
> call, but
> never actually posts the data (it doesn't seem to happen on
> FF).  After
> the ~10 second timeout, dwr does what it's supposed to and
> times out the
> post request with the "Input read failed" exception.  Below is an
> example of the captured HTTP transaction, the first request succeeds,
> while the second never actually posts the 259 bytes it claimed it was
> going to send, both were on the same socket and the socket is still
> active after the exception is returned.  (The capture is from
> the client
> side so it's hard to blame network now).
>
> I am looking for people thoughts on what would cause the dwr
> request to
> start but never actually post the data.
>
> Thanks - Chris
>
> Please excuse my awful depiction of an ethereal capture
> represented in
> an email.
>
>  > POST /oims/dwr/call/plaincall/ChangeQueueProxy.getChangedData.dwr
> HTTP/1.1
>  > Accept: */*
>  > Accept-Language: en-us
>  > Referer: http://sunfire:8089/oims/index.jsp#Reports
>  > Content-Type: text/plain
>  > UA-CPU: x86
>  > Accept-Encoding: gzip, deflate
>  > User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
> 5.1; .NET
> CLR 2.0.50727; .NET CLR 1.1.4322)
>  > Host: sunfire:8089
>  > Content-Length: 259
>  > Connection: Keep-Alive
>  > Cache-Control: no-cache
>  > Cookie: gridSplitter_1=100;
> JSESSIONID=1853E064B9A2D7D780E970A0AD6B62A3
>  >
>  > callCount=1
>  > page=/oims/index.jsp
>  > httpSessionId=1853E064B9A2D7D780E970A0AD6B62A3
>  > scriptSessionId=120DDA8CB4E0E5C4CDF77A1D6E5AADB0131
>  > c0-scriptName=ChangeQueueProxy
>  > c0-methodName=getChangedData
>  > c0-id=0
>  > c0-param0=number:58
>  > c0-param1=number:552120343
>  > batchId=400
> = HTTP/1.1 200 OK
> = Content-Type: text/javascript;charset=ISO-8859-1
> = Content-Length: 145
> = Date: Fri, 18 Apr 2008 21:51:41 GMT
> = Server: Apache-Coyote/1.1
> =
> = //#DWR-INSERT
> = //#DWR-REPLY
> = var s0=[];
> =
> dwr.engine._remoteHandleCallback('400','0',{changeList:s0,curr
entChangeNumber:58,reqChangeNumber:58});

>  > POST /oims/dwr/call/plaincall/ChangeQueueProxy.getChangedData.dwr
> HTTP/1.1
>  > Accept: */*
>  > Accept-Language: en-us
>  > Referer: http://sunfire:8089/oims/index.jsp#Reports
>  > Content-Type: text/plain
>  > UA-CPU: x86
>  > Accept-Encoding: gzip, deflate
>  > User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
> 5.1; .NET
> CLR 2.0.50727; .NET CLR 1.1.4322)
>  > Host: sunfire:8089
>  > Content-Length: 259
>  > Connection: Keep-Alive
>  > Cache-Control: no-cache
>  > Cookie: gridSplitter_1=100;
> JSESSIONID=1853E064B9A2D7D780E970A0AD6B62A3
>  >
> = HTTP/1.1 200 OK
> = Content-Type: text/javascript;charset=ISO-8859-1
> = Content-Length: 332
> = Date: Fri, 18 Apr 2008 21:52:11 GMT
> = Server: Apache-Coyote/1.1
> =
> = //#DWR-REPLY
> = if (window.dwr) dwr.engine._remoteHandleBatchException({
> name:'org.directwebremoting.extend.ServerException',
> message:'Failed to
> read input' });
> = else if (window.parent.dwr)
> window.parent.dwr.engine._remoteHandleBatchException({
> name:'org.directwebremoting.extend.ServerException',
> message:'Failed to
> read input' });
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@...
> For additional commands, e-mail: users-help@...
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@...
For additional commands, e-mail: users-help@...