MyFaces Known Issues ==================== * Sun's current implementation of the FacesTag has a bug, that makes problems when you use IterationTag support: For each tag they count the number of children tags in a member "numChildren". Well, they do not reset this member to 0 in doAfterBody(). So, on the next iteration this counter continues counting and components that do not have an id are created again during findComponent(). Solution: - Either give every tag within an IterationTag an id, - or subclass all your common tags from MyFacesTag, that fixes this behaviour. * Dynamic addition of components as stated in JSF.2.4.2.4 is not (yet) supported when using the "saveStateInClient" feature. * Facet support of JSF API is buggy. 1. UIComponentBase causes a NPE when getClientId is called for a Facet, that is not itself a NamingContainer. Reason is, that they try to search the naming container this component (facet) belongs to. But since facets do not have a parent per definition (see JSF.3.1.6) this is subject to fail. 2. The addChild methods in UIComponentBase try to find a naming container for the component. This is also subject to fail when called for a facet that is not itself a NamingContainer. Please delegate the following methods of your self-written components to net.sourceforge.myfaces.component.UIComponentHelper to make them "facet-able": - getClientId(FacesContext context) - addFacet(String facetName, UIComponent facet) (after calling super.addFacet !) - getParent(UIComponent superGetParent) See net.sourceforge.myfaces.component.UISelectBoolean for an example of delegation. TODO... (Many others!)