[
https://jira.jboss.org/jira/browse/JBSEAM-3716?page=com.atlassian.jira.pl...
]
wayofdragon commented on JBSEAM-3716:
-------------------------------------
I have found a bug in this code.
If the server response comes back before the "window.setTimeout(xxx,0) expires, it
will drop it.
From reading the javascript specs, the minimum timeout value is
actually around 25ms. Anything smaller than that, it gets rounded up.
Also, using
timer to set response callback are inherently flawed IMO. There's always going to be
some sort of race condition.
This problem seems to happen on internet explorer, and safari. Firebox doesn't seem to
have a problem with it though.
I discovered this problem when I set a break point on the incoming request processing code
on the server. If the breakpoint is inserted, everything is good. But when I removed the
breakpoint, the problem appears again.
Reopening this issue for further investigation.
Seam Remoting Callback not set before server response comes back
----------------------------------------------------------------
Key: JBSEAM-3716
URL:
https://jira.jboss.org/jira/browse/JBSEAM-3716
Project: Seam
Issue Type: Bug
Components: Remoting
Affects Versions: 2.0.1.GA
Environment: Microsoft Windows XP - Professional
IE 6.0.2900.2180.xpsp_sp2_gdr.070227-2254
Intel (R) Core(TM) 2 Duo CPU (1.80Ghz)
1.99Gb of RAM
Reporter: wayofdragon
Assignee: Shane Bryzak
Fix For: 2.1.0.GA
I tracked the issue down to one line of javascript code in remote.js
req.onreadystatechange = function() {};
The following thread discusses the problem is with an old version of the JScript.dll
5.6.0.8820 which is the same version I've got on a laptop here.
http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/69...
One solution is to upgrade JScript.dll to 5.6.0.8831
http://www.microsoft.com/technet/security/bulletin/ms06-023.mspx
Or we can do what they did in GWT which is to move the req.onreadystatechange out of the
scope of the current function
window.setTimeout(function() {
req.onreadystatechange = function() {};
}, 0 );
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira