[
https://jira.jboss.org/jira/browse/RF-8536?page=com.atlassian.jira.plugin...
]
Andrew May commented on RF-8536:
--------------------------------
I've tried recreating it with the RichFaces demo webapp, but I've not been able to
get the same problem to occur. Our app is using Seam 2.2.0.GA, but it's not something
I can easily cut down to a runnable example. I'll see if I can create a similar test
app with the same problem.
I found where the script is stuck using the IE8 script debugger - it's looping waiting
for an iframe to have a complete readyState:
this.interval=window.setInterval(function(){if(!this.stopped){var loaded=false;var
error=null;try{if(!Prototype.Browser.Opera&&!Prototype.Browser.WebKit&&this.iframe.contentWindow&&this.iframe.contentWindow.document){loaded=/complete/.test(this.iframe.contentWindow.document.readyState);}}catch(e){error=e;}
if(error){this.stop();this.onerror();}}
return false;}.bind(this),200);
but this.iframe.contentWindow.document.readyState is always "interactive".
Our fileupload looks something like this:
<rich:panel id="attachmentPanel">
...
<rich:fileUpload id="attachmentUpload"
fileUploadListener="#{attachments.addAttachments}"
disabled="#{attachmentFailed}" listHeight="60px"
maxFilesQuantity="1" noDuplicate="true"
autoclear="true"
acceptedTypes="#{file.types}"
immediateUpload="true"
ontyperejected="alert('#{messages['attachment.type.invalid']}');"
onsizerejected="alert('#{messages['attachment.size.invalid']}');"
onupload="setAttachable();">
<!-- Use Prototype CSS3 selector support for find and activate the last
description field in an attachment table -->
<a4j:support event="onuploadcomplete"
reRender="attachmentPanel"
oncomplete="$$('table[id$="attachmentTable"] tr:last-of-type
input[id$="description"]')[0].activate();"/>
</rich:fileUpload>
<a4j:jsFunction id="setAttachableJS" name="setAttachable"
ajaxSingle="true"
action="#{attachments.setAttachable(attachable)}"/>
It's re-rendering the whole panel after the upload completes (probably not the best
idea), but I've had the same problem when changing this to only re-render the list of
uploaded files (and increasing maxFilesQuantity). Sometimes it fails on the first uploaded
file, sometimes after a few files have been attached.
fileUpload does not always complete in IE8
------------------------------------------
Key: RF-8536
URL:
https://jira.jboss.org/jira/browse/RF-8536
Project: RichFaces
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: browser compatibility, component-misc
Affects Versions: 3.3.2.SR1
Environment: Windows XP IE8 - probably all versions of Windows with IE8
Reporter: Andrew May
Assignee: Nick Belaevski
Using fileUpload in IE8 sometimes (perhaps 1 out of every 10 times) fails to complete
uploads. The file is uploaded but the progress bar is still displayed and the
onuploadcomplete event is not triggered.
The browser status bar shows
"Waiting for
http://localhost:8080/finreq/purchase/edit.jsf?_richfaces_upload_uid=0.54...
but when using Fiddler to examine the requests, this request has successfully completed.
Using the script debugger in IE8 and using "Break All" when the error occurs
the method highlighted is this:
3.3.2.SR1org.ajax4jsf.javascript.PrototypeScript line 17:
return __method.apply(object,args.concat($A(arguments)))
I wonder whether this could be related to one of the IE8 incompatibilities in Prototype
1.6.0.3 that have been fixed in Prototype 1.6.1.
Testing in IE7 and IE6 there were no similar problems seen.
--
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