Details
-
Type: Improvement
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0-Beta2
-
Fix Version/s: 2.0.0
-
Component/s: ACE-Components, Framework
-
Labels:None
-
Environment:ICEfaces 2
-
Affects:Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial, Compatibility/Configuration
Description
The ICEfaces Advanced Comps (ace) should support the use of the <icecore:singleSubmit> tag. Using the "icecore:singleSubmit" tag can be viewed as a nice convenience, an easier way to indicate that all components inside a region should adopt singleSubmit behaviour, without having to specify "singleSubmit=true" on each component individually.
In the case of the ace components, placing inside a <icecore:singleSubmit> region on the page should have the effect of setting all the ace components "singleSubmit" attributes to "true". This approach will ensure that the ace component behaviour inside a singleSubmit region will be identical to that when their "singleSubmit" attribute is set to true.
This will require:
1. A mechanism for the ace component renderers to know if they are inside a singleSubmit region, so they can set their singleSubmit attributes accordingly (if not already defined by the application).
2. A way to ensure that the ace component events do not trigger the default "icecore:singleSubmit" tag submit behaviour based on event bubbling.
In the case of the ace components, placing inside a <icecore:singleSubmit> region on the page should have the effect of setting all the ace components "singleSubmit" attributes to "true". This approach will ensure that the ace component behaviour inside a singleSubmit region will be identical to that when their "singleSubmit" attribute is set to true.
This will require:
1. A mechanism for the ace component renderers to know if they are inside a singleSubmit region, so they can set their singleSubmit attributes accordingly (if not already defined by the application).
2. A way to ensure that the ace component events do not trigger the default "icecore:singleSubmit" tag submit behaviour based on event bubbling.
Method added to org.icefaces.impl.util.Util:
public static boolean withinSingleSubmit(UIComponent component)
Individual components need to call this at render time to determine their singleSubmit state.
Note that the current implementation does not support subtree rendering because the SingleSubmitRenderer adds an attribute to the parent component and uses the detection of that attribute to return the boolean value. This must be implemented at the TagHandler level, likely with a mechanism similar to the mojarra AjaxHandler, to support subtree rendering.