Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Duplicate
-
Affects Version/s: 1.5.3
-
Fix Version/s: None
-
Component/s: ICE-Components
-
Labels:None
-
Environment:Windows XP / Tomcat 5.5.17
-
Support Case References:
-
Workaround Exists:Yes
-
Workaround Description:
Description
An <ice:commandButton> with immediate="true" does not set the UIInput.setSubmittedValue(null) like the ProcessValidations phase does. This causes problems when you have two panelgroups (only one rendered at a time) with <ice:panelGroup rendered="#{Bean.isRendered}"> and <ice:panelGroup rendered="#{!Bean.isRendered}"> like we have in PortalUserList.jspx.
Issue Links
- duplicates
-
ICE-1741 submittedValue of component remains stored during page navigation
-
- Closed
-
Since there maybe panels and facets in a single form.
I suggested to change the work around as follows:
private static void clearSubittedFormValuesRecurse(UIComponent uiComponent)
{ UIInput uiInput = (UIInput) uiComponent; uiInput.setSubmittedValue(null); }{
if (uiComponent instanceof UIInput)
// Use getFacetsAndChildren to ensure all children in facets are scanned too.
{ clearSubittedFormValuesRecurse((UIComponent) childIterator.next()); }Iterator childIterator = uiComponent.getFacetsAndChildren();
if (childIterator != null)
{
while (childIterator.hasNext())
}
}