Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 426096

Summary: SocketTimeoutException un ProtocolUtil while reading json Message
Product: [RT] RAP Reporter: Samy Abou-Shama <sa>
Component: RWTAssignee: Project Inbox <rap-inbox>
Status: RESOLVED NOT_ECLIPSE QA Contact:
Severity: normal    
Priority: P3 CC: ivan, rsternberg
Version: 1.5   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:
Attachments:
Description Flags
Screenshot of the Stacktrace none

Description Samy Abou-Shama CLA 2014-01-20 05:46:19 EST

    
Comment 1 Samy Abou-Shama CLA 2014-01-20 05:58:43 EST
We have a RAP Application based on RAP 1.5. 

We have received complaints from our customers, that they are getting the attached http 500 error (see screenshot). 

It only happens with IE browsers (probably only IE 8).
Some Customers are using Firefox as workarround. 

It seems like the error occurs without any user intercation (background calls). It can be however, that due to the timeout, the user only thinks that there was no interaction.

Debugging is not that easy since we do not have a Testenvironment where we can reproduce this error!
Comment 2 Samy Abou-Shama CLA 2014-01-20 06:00:45 EST
Created attachment 239131 [details]
Screenshot of the Stacktrace
Comment 3 Samy Abou-Shama CLA 2014-01-20 06:03:48 EST
Please note:
In the original 1.5 RAP Version, the IllegalStateException thrown does not include the root cause. We had to create a pathed RAP Version to get to the SocketTimeoutException 
From the log of the patched version we also found, that the read json string is still '' when Exception occurs
Comment 4 Ralf Sternberg CLA 2014-01-20 10:31:07 EST
It seems that other frameworks have similar issues [2, 3] and tracked it down to be caused by IE bug KB895954 [3]. This problem affects IE 6 .. IE 8. A hotfix is included in IE7 and IE8, but it has to be explicitly enabled as explained in section "How to enable this hotfix" [3].

[4] suggests that changing tomcat to use the NIO connector instead of APR could work around the problem.

[1] http://dojo-toolkit.33424.n3.nabble.com/Infrequent-ajax-errors-with-IE-td3991257.html
[2] http://dev.vaadin.com/ticket/8001
[3] http://support.microsoft.com/kb/895954
[4] http://tomcat.10.x6.nabble.com/Chasing-a-SocketTimeoutException-with-APR-td4667588.html
Comment 5 Samy Abou-Shama CLA 2014-01-27 04:43:46 EST
Thank you Ralf, 

I have tested the NIO Connector on one of the buggy Tomat-Installations. First Tests have shown, that this solutions works :-)

We will test on other machines.

Samy
Comment 6 Samy Abou-Shama CLA 2014-01-29 06:23:11 EST
An other customer has succesfully tested the official MS BugFix activation in the registry [1]. 

We will now ask all our customers with this issue to do the same. 
The NIO Connector on Tomcat is a nice alternative, but we prefer to fix the MS bug the MS way :-)

Thank you for your efforts. From my point of view, this fixes this bug report.

[1] http://support.microsoft.com/kb/895954
Comment 7 Ivan Furnadjiev CLA 2014-01-29 06:33:11 EST
Close as NOT_ECLIPSE.