There is an impact on rendersChildren = false components after TCCI changes as
we all know. Previously encodeChildren() was called only if "rendersChildren"
was true but now we invoke it regardless. Due to this I ran into to a problem
with our Repeater Demo which is why I am filing this isssue for clarification.
RepeaterRenderer.encodeChildren() calls super.encodeChildren() as the first
step, which calls Renderer.encodeChildren() which in turn invokes
UIComponent.encodeAll() on its children. This results in UIColumn's encodeAll()
being called, which results in an extra row being rendered. (Before TCCI, this
was not a problem because UIColumn's encodeChildren() would never be called due
to rendersChildren being false.)
Question: Since UIColumn is not a rendersChildren=true component, do we need to
override encodeAll() to not recurse its children ? That way, applications like
Repeaterdemo would function as they used to before TCCI.
If we feel thats not needed, I can fix the Repeater Renderer not to call
super.encodeChildren(). (Since the RepeaterRenderer takes reponsibility for
rendering its children, this call shouldn't be necessary.)