/** * Override the {@link UIComponent#getContainerClientId} to allow users to disable this form from * prepending its <code>clientId</code> to its descendent's <code>clientIds</code> depending on * the value of this form's {@link #isPrependId} property. */ public String getContainerClientId(FacesContext context) { if (this.isPrependId()) { return super.getContainerClientId(context); } else { UIComponent parent = this.getParent(); while (parent != null) { if (parent instanceof NamingContainer) { return parent.getContainerClientId(context); } parent = parent.getParent(); } } return null; }