An update on the RPC communication stops functioning when running with Internet Explorer issue

56 views
Skip to first unread message

PJ

unread,
Nov 5, 2008, 5:39:28 AM11/5/08
to Google Web Toolkit
Hi,
this is an update on the "RPC communication stops functioning when
running with Internet Explorer" issue (http://groups.google.com/group/
Google-Web-Toolkit/tree/browse_frm/thread/2f7f9816e0578e0c/
1e92873057a32710?hl=en&rnum=1&_done=%2Fgroup%2FGoogle-Web-Toolkit
%2Fbrowse_frm%2Fthread%2F2f7f9816e0578e0c%3Fhl%3Den%26tvc%3D1%26pli
%3D1%26#doc_1e92873057a32710),
follow up at
http://groups.google.com/group/Google-Web-Toolkit/tree/browse_frm/thread/bcd4438cff88ccf1/d9219c153c3143b6?hl=en&rnum=1&_done=%2Fgroup%2FGoogle-Web-Toolkit%2Fbrowse_frm%2Fthread%2Fbcd4438cff88ccf1%3Fhl%3Den%26#doc_d9219c153c3143b6

1. Using GWT 1.5 did not solve the problem

2. I experience a problem that is specific to Internet Explorer 6 and
7. I have, despite numerous efforts, not been able to reproduce this
problem with Firefox, Safari or Opera.

3. Sometimes the corrupted requests results in
"javax.servlet.ServletException: Client did not send nnn bytes as
expected", but in some rare cases also in

"ALLVARLIG: Exception while dispatching incoming RPC call
java.io.IOException
at
org.apache.jk.common.JkInputStream.receive(JkInputStream.java:199)"
(full stack trace below)

4. This happens when sending repeated similar requests updating state
from server. It does not matter if this is done using a Timer sending
repeated requests or by scheduling a new request in the callback. RPC
communication is broken anyhow.

I have tried different different servers and different ISP:s, but the
problem seem to come back every time. This application is fairly
simple and straightforward and with IE being the most common browser,
are really this few having this problem ?

I will try to strip the application down keeping this problem and
hopefully someone would care to investigate it further?

/PJ

ALLVARLIG: Exception while dispatching incoming RPC call
java.io.IOException
at
org.apache.jk.common.JkInputStream.receive(JkInputStream.java:199)
at
org.apache.jk.common.JkInputStream.refillReadBuffer(JkInputStream.jav
a:258)
at
org.apache.jk.common.JkInputStream.doRead(JkInputStream.java:177)
at org.apache.coyote.Request.doRead(Request.java:428)
at
org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.j
ava:304)
at
org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:405)
at
org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:327)
at
org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStrea
m.java:193)
at
com.google.gwt.user.server.rpc.RPCServletUtils.readContentAsUtf8(RPCS
ervletUtils.java:152)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServ
iceServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:
637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:
717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:697)
at org.apache.jk.common.ChannelSocket
$SocketConnection.runIt(ChannelSock
et.java:889)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:690)
at java.lang.Thread.run(Thread.java:619)

PJ

unread,
Nov 7, 2008, 5:00:09 AM11/7/08
to Google Web Toolkit

I almost can't believe we solved this... Inspired by the thread at
http://www.nabble.com/question-:-encounter-java.net.SocketTimeoutException:-Read-timed-out-occasionally-td19326602.html,
we disabled keep-alive in Apache and that seems to have done the
trick.

What I don't understand is why the problem was there when testing with
IE 6 with HTTP 1.1 disabled. Shouldn't that ignore keep-alive?

I am also curious why there is not more material on this IE bug (if it
is a bug). It should be an very common problem. One specific
coincidence in this case was that the timer interval was equal to the
keep-alive timeout. But still..?

/PJ

On Nov 5, 11:39 am, PJ <per.e.johns...@gmail.com> wrote:
> Hi,
> this is an update on the "RPC communication stops functioning when
> running with Internet Explorer" issue (http://groups.google.com/group/
> Google-Web-Toolkit/tree/browse_frm/thread/2f7f9816e0578e0c/
> 1e92873057a32710?hl=en&rnum=1&_done=%2Fgroup%2FGoogle-Web-Toolkit
> %2Fbrowse_frm%2Fthread%2F2f7f9816e0578e0c%3Fhl%3Den%26tvc%3D1%26pli
> %3D1%26#doc_1e92873057a32710),
> follow up athttp://groups.google.com/group/Google-Web-Toolkit/tree/browse_frm/thr...
Reply all
Reply to author
Forward
0 new messages