Hi,
the get-ter of the componentbinding-property is never called. The set-ter with every request that is processed on server side, not only "one time".
Only time, when it is not called: when the rendered of the component is set to false...
Code:
public void encodeBegin(FacesContext context) throws IOException
{
if (isRendered() == false)
return;
ResponseWriter writer = context.getResponseWriter();
XMLWriter.writer_writeFormattedText(writer,null,"\n\n<!-- HTPANE begin -->\n");
String clientId = getClientId(context);
String width = writeTdAroundControl(writer,null,true);
String height = getAttributeValueAsString("height");
if (height != null && height.endsWith("%"))
height = "100%";
XMLWriter.writer_startElement(writer,null,"table");
XMLWriter.writer_writeAttribute(writer,null,"cellspacing","0");
XMLWriter.writer_writeAttribute(writer,null,"cellpadding","0");
StringBuffer style = new StringBuffer();
if (width != null)
style.append(";width:"+width);
if (height != null)
style.append(";height:"+height);
if (style.length() > 0)
XMLWriter.writer_writeAttribute(writer,null,"style",style.toString());
String styleClass = getCurrentStyleClass("classpane");
XMLWriter.writer_writeAttribute(writer,null,"class",styleClass);
XMLWriter.writer_closeStartElement(writer,null);
// --------------------------------------------------------------------
updateComponentBinding();
}
In short: the set-ter is called... - that's what the code and our testing tells ;-)
Björn