<t:columns id="columns" value="#{openDataList.columnHeaders}" var="columnHeader" style="width:#{openDataList.columnWidth}px">
<f:facet name="header">
<t:commandSortHeader columnName="#{columnHeader.label}" arrow="false" immediate="false">
<f:facet name="ascending">
<t:graphicImage value="images/ascending-arrow.gif" rendered="true" border="0"/>
</f:facet>
<f:facet name="descending">
<t:graphicImage value="images/descending-arrow.gif" rendered="true" border="0"/>
</f:facet>
<h:outputText value="#{columnHeader.label}" />
</t:commandSortHeader>
</f:facet>
<!-- row is also available -->
<h:inputText rendered="#{openDataList.valueModifiable}" value="#{openDataList.columnValue}" />
<h:outputText rendered="#{!openDataList.valueModifiable}" value="#{openDataList.columnValue}" />
</t:columns>
Yahoo! for Good
Click here to donate to the Hurricane Katrina relief effort.