com.ibm.xsp.component
Interface FacesRefreshableComponent

All Superinterfaces:
javax.faces.component.NamingContainer
All Known Implementing Classes:
UIDataEx, UIDataIterator, UIDataTable, UIFileDownload, UIViewPanel, XspDataIterator, XspDataTableEx, XspFileDownload, XspViewPanel

public interface FacesRefreshableComponent
extends javax.faces.component.NamingContainer

A NamingContainer that can be refreshed by one of it's children. This getNonChildClientId(FacesContext) method is used instead of the UIComponent.getClientId(FacesContext) method to get the clientId of the component to be refreshed using an ajax request.

The reason the normal getClientId will not work is that NamingContainers are allowed to return alternate clientIds while rendering their children that differ from the clientId that would be returned before rendering the children.

Hence a child that requires the initial clientId, needed to perform an ajax partial refresh on the NamingContainer, cannot use the getClientId method.

An example of this is components that inherit from UIData.
Initially getClientId will return a value ending with the id.
While rendering children getClientId will end with id:rowIndex
getNonChildClientId should always return a value ending with the id.


Field Summary
 
Fields inherited from interface javax.faces.component.NamingContainer
SEPARATOR_CHAR
 
Method Summary
 java.lang.String getNonChildClientId(javax.faces.context.FacesContext context)
           
 

Method Detail

getNonChildClientId

java.lang.String getNonChildClientId(javax.faces.context.FacesContext context)
Parameters:
context -
Returns: