Richfaces-3.3.1 and ModalPanel re-render on Safari
abafna May 29, 2009 6:57 PMAll,
I am using ModalPanel component to allow users to change their passwords. When new password criteria is not met, the modal panel is re-rendered with proper error message. Below is the code:
<rich:modalPanel id="resetPasswordPanel" height="200" width="480" showWhenRendered="#{userAdmin.showResetPasswordPanel}"> <f:facet name="header"> <h:outputText value="Reset Password"></h:outputText> </f:facet> <h:outputText value="Please select a new password for #{userAdmin.selectedUser.username}" /> <br/><rich:spacer height="10"/> <s:decorate id="resetNewPasswordDecoration" template="layout/edit.xhtml"> <ui:define name="label">New Password</ui:define> <h:inputSecret id="resetNewPasswordInput" value="#{userAdmin.newPassword}" redisplay="true"> <a4j:support ajaxSingle="true" event="onblur" /> </h:inputSecret> </s:decorate> <s:decorate id="resetConfirmPasswordDecoration" template="layout/edit.xhtml"> <ui:define name="label">Confirm Password</ui:define> <h:inputSecret id="resetConfirmPasswordInput" value="#{userAdmin.confirmPassword}" redisplay="true"> <a4j:support ajaxSingle="true" event="onblur"/> </h:inputSecret> </s:decorate> <br/><rich:spacer height="10"/> <a4j:commandButton value="Reset Password" immediate="true" action="#{userAdmin.setPassword}" reRender="resetPasswordPanel, passwordChangedPanel"/> <a4j:commandButton value="Cancel" immediate="true" onclick="#{rich:component('resetPasswordPanel')}.hide()" action="#{userAdmin.resetShowResetPasswordPanel()}" reRender="resetPasswordPanel"/> <h:messages styleClass="errors" /> </rich:modalPanel>
This code was working fine on both, Safari & Firefox, when I was on richfaces-3.2.2.GA. However, since the upgrade to richfaces-3.3.1.GA, when an error is encountered, ModalPanel goes in hidden state and is not getting re-rendered on Safari. When page is re-loaded via a refresh, the modal panel appears on top because of back-end flag setting that I was not able to change because the modal panel was hidden. The same code works as expected on Firefox.
Is anyone else facing this problem?
Configuration:
JBoss - 4.2.3
Seam - 2.0.2
Richfaces - 3.3.1
Safari - 3.2.3
Firefox - 3.0.10
I think this is a bug. Anyone any thoughts?
Thanks
Amit