UIXShowOne SKIP_UNRENDERED implementation does not match renderer logic -----------------------------------------------------------------------
Key: TRINIDAD-2081 URL: https://issues.apache.org/jira/browse/TRINIDAD-2081 Project: MyFaces Trinidad Issue Type: Bug Components: Components Affects Versions: 2.0.0-beta-2 Reporter: Andy Schwartz Assignee: Andy Schwartz UIXShowOne.visitTree() attempts to provide SKIP_UNRENDERED support by only visiting the disclosed showDetail child. However, the current implementation is insufficient. There are two problems: 1. UIXShowOne.visitTree() does not handle the case where no showDetail child is explicitly disclosed. In this case, the renderer typically forces the first rendered/enabled showDetail child to be disclosed. UIXShowOne.visitTree() has no such fallback logic, and thus does not visit any child even though some child will be rendered. 2. More generally, UIXShowOne.visitTree() does not match renderer logic for determining which child will be rendered. For example, UIXShowOne.visitTree() only looks at the disclosed attribute. On the other hand, PanelTabbedRenderer checks the rendered and disabled attributes in addition to the disclosed attributes. (Other renderers may check other attributes.) We need some way to ensure that UIXShowOne's SKIP_UNRENDERED implementation and any associated renderers use the same logic to determine which child is in fact rendered. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira