UIXIterator.processFlattenedChildren() and its underlying UIXCollection cache 
is not initialized or flushed properly
--------------------------------------------------------------------------------------------------------------------

                 Key: TRINIDAD-972
                 URL: https://issues.apache.org/jira/browse/TRINIDAD-972
             Project: MyFaces Trinidad
          Issue Type: Bug
          Components: Components
    Affects Versions: 1.2.6-core, 1.2.7-core
            Reporter: Matt Cooper
            Assignee: Matt Cooper


UIXIterator.processFlattenedChildren() and its underlying UIXCollection cache 
is not initialized or flushed properly.  This becomes a problem when you nest 
iterators.  During normal use of non-flattening iterators, its cache gets 
initialized and flushed during the encodeBegin() of its parent class, 
UIXCollection.  During a flattened use case (e.g. the parent component of the 
iterator has a renderer that uses UIXComponent.processFlattenedChildren()), 
encodeBegin() does not get invoked and thus the cache is neither initialized 
properly nor flushed.  We need to expose a non-public method on UIXCollection 
that invokes its private initialization and private flushing functionality so 
that UIXIterator which extends it can invoke this new method during its 
UIXIterator.processFlattenedChildren() and thus so that nested iterators where 
the inner iterator is flattened can work.  This change will have zero impact on 
the non-flattened use case so there is no risk to existing applications in that 
scenario.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to