sounds good! +1
--Manfred On Fri, Oct 24, 2008 at 2:12 PM, Simon Kitching <[EMAIL PROTECTED]> wrote: > Hi All, > > I've always hated the "forceId" feature of tomahawk for two reasons: > (a) it makes it dangerous to compose pages using facelets templating, > jsp:include or similar > (b) it only works for tomahawk components > > There is nothing that can be done about (a); any "flattening" of the id > is dangerous. But sometimes it is just necessary. > > It is possible to do something about (b) though. JSF1.2 adds method > UIComponentBase.getContainerClientId. A trivial component can therefore > be written that prevents any prefix being applied to the ids of its > child components: > > <f:subview id="mysubview1"> > <h:commandButton id="btn1" ../> # clientId = "mysubview1:btn1" > > <s:globalId id="whatever"> > <h:commandButton id="btn2" .../> # clientId="btn2" > <h:graphicImage id="img1" ../> # clientId="img1" > </s:globalId> > </f:subview> > > The implementation is trivial: > > public class GlobalId extends UIComponentBase implements NamingContainer > { > private final static String COMPONENT_FAMILY = "oamc.GlobalId"; > > public String getFamily() > { > return COMPONENT_FAMILY; > } > > public String getContainerClientId(FacesContext facesContext) > { > return null; > } > } > > Note that this component would only work for JSF1.2 or later (though it > will compile fine with JSF1.1). > > Would this be useful or not? > > Regards, > Simon > > -- > -- Emails in "mixed" posting style will be ignored > -- (http://en.wikipedia.org/wiki/Posting_style) > >