Description
If prependId="false", the generated id should get an unique id from the parent naming container of UIForm, to ensure uniqueness on id generation.
Reported by Zhao Koh on dev list : MyFaces 2.1.8 - Issues with composite component renderFacet
Hi all,
I am currently using MyFaces 2.1.8 but discovered an issue with composite component renderFacet - and this issue started at version 2.1.4.
The following describes the problem:
I have a composite component called buttonSelectBox that uses composite:renderFacet to inject content from client - nothing fancy, only a span that surrounds the content.
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:composite="http://java.sun.com/jsf/composite"
xmlns="http://primefaces.org/ui">
<composite:interface>
<composite:attribute name="compId" required="true" />
<composite:attribute name="defaultText" required="true" />
<composite:facet name="content" required="false" />
</composite:interface>
<composite:implementation>
<span class="buttonlink">
<composite:renderFacet name="content" />
</span>
</composite:implementation>
</html>
Then I have a facelet page that uses this composite component and a standard <h:commandButton> that invokes an action.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:custom="http://java.sun.com/jsf/composite/components"
xmlns="http://primefaces.org/ui"
xmlns:pe="http://primefaces.org/ui/extensions"
lang="en">
<h:head>
</h:head>
<h:body>
<div class="container">
<div class="row">
<div id="workspace">
<h:form id="taskListForm" prependId="false">
<custom:buttonSelectBox compId="myLinksMenu" defaultText="2222">
<f:facet name="content">
<ul>
<li><a href="#">My Preferences</a></li>
</ul>
<ul>
<li><a href="#">My Profile</a></li>
<li><a href="#
/logout">Logout</a></li>
</ul>
</f:facet>
</custom:buttonSelectBox>
<h:commandButton action="#
{testBean.buttonAction}" value="Click ME" />
</h:form>
</div>
</div>
</div>
</h:body>
</html>
Attachments
Attachments
Issue Links
- is a clone of
-
MYFACES-3373 UIForm.createUniqueId should take into account prependId logic
- Closed