MyFaces Known Issues ==================== * Right after starting a myfaces application the following message is logged: WARNING: Error in faces-config.xml - inconsistency with TLD: Attribute 'selectedIndex' of renderer 'TabbedPane' has different class in Taglib descriptor. You can safely ignore this message. * There is a known issue for Sun's current implementation of the FacesTag, that makes problems when you use IterationTag support or you have conditional Tags. Please subclass all your own tag classes from MyFacesTag, that fixes this behaviour. * Dynamic addition of components as stated in JSF 1.0 PRD2 2.4.2.4 is not (yet) supported when using the "saveStateInClient" feature. * Method "getClientId" in UIComponentBase of current JSF API has a bug (side-effect): It changes the componentId (to the clientId) which is fatal when you have nested naming containers. Please overwrite getClientId in your self-written components and delegate it to UIComponentUtils.getClientId. (see MyFacesUIOutput for example) * Method "addFacet" in UIComponentBase of current JSF API has a bug: It does not add the facet to the naming container. Please overwrite addFacet in your self-written components and call UIComponentUtils.ensureComponentInNamingContainer after calling the super addFacet method. (see MyFacesUIOutput for example) * Methods "removeChild", "removeFacet" and "clearChildren" in UIComponentBase of current JSF API have bugs: They do not remove the child from the naming container. So a findComponent will still find the component although it is no longer in tree. Please use the corresponding methods in UIComponentUtils to overcome this issue. * id attributes in Tomcat 5: Tomcat 5 tries to translate id attributes of tags to java variables without revision of the name. So, you must not use hyphens (or other special characters) in id attributes. * There are some issues with when using the "Minimizing State Saving" feature. The MinimizingStateSaver relies on the fact, that the current page is fully parsable. This is necessary, because MinimizingStateSaver needs static information about each component: Initial property and attribute values, for example. Also, MinimizingStateRestorer must be able to build and reconstitute the whole tree from static information before anything is rendered. - If you include JSF code by means of , the page attribute must be an absolute path. Relative paths are not supported yet. - Dynamically including JSF code via is not supported. - Tomcat does not call the setParent method of the first included tag. MyFaces implements a hack to solve this issue. Well, this hack only works for tags that are subclasses of MyFacesTag or MyFacesBodyTag. So, if you have implemented your own tags/components, keep in mind that the last tag before the and the first tag in the included code must both be derived from MyFacesTag or MyFacesBodyTag. * Statically including code by means of the <%@include%> directive is supported. Unfortunatly, there is an annoying issue with the included jasper code, that makes the JSP parser fail, when you include a tag that is not closed within the same include file. We did not find out the reason yet. TODO... (Many others!)