[
https://issues.apache.org/jira/browse/MYFACES-1804?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mario Ivankovits updated MYFACES-1804:
--------------------------------------
Resolution: Duplicate
Status: Resolved (was: Patch Available)
It is so strange.
Two bugs uncovered by different people and filed in sequence. I can't belive it
:-) Way too cool.
MYFACES-1805 fixed it.
> Pressing a download button corrupts other button actions in Internet Explorer
> -----------------------------------------------------------------------------
>
> Key: MYFACES-1804
> URL: https://issues.apache.org/jira/browse/MYFACES-1804
> Project: MyFaces Core
> Issue Type: Bug
> Components: General
> Affects Versions: 1.2.0
> Environment: Microsoft internet Explorer 6.0 (not tested for other
> versions)
> Reporter: Thomas Fischer
> Attachments: myfaces-1804.patch, testHiddenInputJavascript.html,
> testie.jsp, TestieController.java
>
>
> Situation: The user accesses a jsf page where a commandlink or commandButton
> starts a download, and other commandLinks or CommandButtons are present in
> the same form, using the internet explorer as a browser. The user e clicks on
> the download Button. Afterwards, the user clicks on any other button in the
> same form.
> Observed behaviour: The previous download is started again, regardless of the
> action associated with the button
> Expected behaviour: The action associated with the button should be executed
> Analysis: The error originates in the generated javascript function
> oamSetHiddenInput(formname, name, value). In this function, it is checked
> whether the hidden input already exists, using the javascript code
> if(typeof form.elements[name]=='undefined')
> This works fine in the Internet explorer as long as the hidden input was
> created in html. If the hidden input was created using javascript, e.g. by
> the code in the same function, the above condition returns true although the
> hidden input already exists. This results in creating a second hidden input
> field instead of replacing the value in the existing one. If the server only
> uses the value of the first(i.e. already existing) hidden input field, it
> gets the old value instead of the new one. In the end, myfaces reads the old
> value of the html parameter ${formName}:_idcl, and so the old action is
> executed instead of the new one.
> Resolution: Accessing the hidden input via indices (form.elements[0],
> form.elements[1] ...) also works if the hidden input is created dynamically.
> Note that the error does only occur if the page is not reloaded when the
> first button is pressed, so a special action as e.g. a download is needed to
> trigger the behaviour.
> I'd consider this to be a bug in IE, but as we cannot persuade all users to
> use a browser which is less buggy, a workaround should be implemented in
> myfaces. The error does not occur in Firefox.
> As the implementation is in the myfaces_shared project, this affects both
> core and tomahawk.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.