com.sun.rave.web.ui.component
Class TableColumnBase

java.lang.Object
  extended byjavax.faces.component.UIComponent
      extended byjavax.faces.component.UIComponentBase
          extended bycom.sun.rave.web.ui.component.TableColumnBase
All Implemented Interfaces:
javax.faces.component.StateHolder
Direct Known Subclasses:
TableColumn

public abstract class TableColumnBase
extends javax.faces.component.UIComponentBase

Use the ui:tableColumn tag to define the column cells of a table, inside a ui:table tag.  A ui:tableRowGroup must include at least one ui:tableColumn tag.

The ui:table tag is used to define the structure and actions of the table, and is a container for ui:tableRowGroup which define the rows of a table.  The ui:tableRowGroup tag is a container for ui:tableColumn tags, which are used to define the columns of the table.  The documentation for the ui:table tag contains detailed information about the table component.  This page provides details about how to define table columns only.

HTML Elements and Layout

The tableColumn component is used to define attributes for XHTML <td> elements, which are used to display table data cells. However, the rendering of column headers and footers is handled by the tableRowGroup component. The diagram shows the table layout, and highlights the areas that are defined with the ui:tableColumn tag.


Title Bar 
Action Bar (top)  
Column Header (specified with headerText attribute or header facet in first ui:tableColumn tag in  ui:tableRowGroup tag) Column Header (specified with headerText attribute or header facet in second ui:tableColumn tag in ui:tableRowGroup tag)
Group Header Bar 
Table data




Table data
Column Footer (specified with footerText attribute or footer facet in first ui:tableColumn tag in ui:tableRowGroup tag) Column Footer (specified with footerText attribute or footer facet in second ui:tableColumn tag in ui:tableRowGroup tag)
Group Footer Bar 
Table Column Footer (specified with tableFooterText attribute or tableFooter facet in ui:tableColumn tag) Table Column Footer (specified with tableFooterText attribute or tableFooter facet in ui:tableColumn tag)
Action Bar (bottom) 
Footer

Column Header

The Column Header area displays a header for each table column.  If you specify the text of a column header with the headerText attribute in the ui:tableColumn tag, the default implementation of the header is rendered. You can specify a separate component to provide column header content by using the header facet, which overrides the headerText attribute.  You can add extra HTML code to the header's rendered <td> element with the extraHeaderHtml attribute.

The following ui:tableColumn attributes can be used to change the appearance and behavior for sorting of the Column Header:

Column Footer

The Column Footers area displays a footer for each table column. If you specify the text of a column footer with the footerText attribute in the ui:tableColumn tag, the default implementation of the footer is rendered. You can specify a separate component to provide footer content by using the footer facet, which overrides the footerText attribute.  You can add extra HTML code to the footer's rendered <td> element with the extraFooterHtml attribute.

Table Column Footer

The Table Column Footers area displays column footers at the bottom of the table. The table column footers are useful in tables with multiple groups of rows. If you specify the text of table column footers with the tableFooterText attribute, the default implementation of the footer is rendered.  You can specify a separate component to provide the content for a table column footer by using the tableFooter facet, which overrides the tableFooterText attribute.  You can add extra HTML code to the table footer's rendered <td> element with the extraTableFooterHtml attribute.

Alignment and Formatting of Cells

In addition to defining the headers and footers for columns, the ui:tableColumn tag can be used to set other aspects of the table's appearance and  behavior. 

The following attributes affect the alignment of table cells:
Attributes that can be used to make the column headers more accessible for adaptive technologies include:
Attributes that affect other aspects of cells include:

Selection Column

To make table rows selectable, the first column of the table should display only checkboxes or radio buttons that the user clicks to select the row. When you set the selectId attribute in the ui:tableColumn tag and include a ui:checkbox or ui:radioButton tag as a child of the ui:tableColumn tag, the first column is rendered appropriately.  See the Select Single Row example for more information.

Facets

The ui:tableColumn tag supports the following facets, which allow you to customize the layout of the component.

Facet Name
Table Item Implemented by the Facet
footer         
Footer that is displayed at the bottom of the column within the group of rows. The footer applies to the column of cells that are defined by the ui:tableColumn tag.  This facet can be used to replace the default footer for the column.
header Header that applies to the column of cells that are defined by the ui:tableColumn tag. This facet can be used to replace the default header for the column.
tableFooter
Footer that is displayed at the bottom of the table, below the last group of rows, above the Action Bar and overall table footer. The table footer content should apply to the column for all the groups of rows in the table.  This facet can be used to replace the default table footer for the column.

Client Side JavaScript Functions

See the ui:table tag's JavaScript documentation.  The same functions are used for the ui:tableColumn tag.

Examples

The following examples use a backing bean called TableBean, which is shown in the ui:table tag documentation. Utility classes used in the examples are included in this page, after the examples.  Additional examples are shown in the ui:table and ui:tableRowGroup documents.

All examples assume that the ui:table tag is contained within an HTML <form> element so that actions can submit form data.

Examples in this file:

Example 1: Sortable Table

Example 2: Select Single Row

Example 3: Select Multiple Rows

Example 4: Hidden Selected Rows

Example 5: Spacer Columns

Example 6: Empty Cells

Example 7:  Embedded Actions

Example 8: Alarms

Example 9: Multiple Column Headers and Footers

Supporting files:

TableBean backing bean in ui:table documentation

Utility classes in ui:table documentation

Example 1: Sortable Table

This example shows how to implement table sorting, and uses the TableBean and Name.java code shown in the ui:table documentation. Notice that the ui:table tag includes the clearSortButton attribute to enable users to clear any sorts applied to the table.

The value binding objects that you assign to the sort attribute in ui:tableColumn must be the proper data type for sorting to work as expected. For example, you should not use String objects for numeric data because the digits will be sorted according to their ASCII values. Sorting the numbers as strings causes the number 2 to be displayed before the number 11, for example.  Be sure to sort using objects such as Number, Character, Date, Boolean, etc.


You can use a FieldKey id or value binding to define criteria for sorting the contents of TableDataProvider. However, when sorting a column of checkboxes or radio buttons, you must use a value binding because values are external to the data (i.e., TableDataProvider does not contain FieldKey ids for a selected checkbox value). 

User interface guidelines recommend not setting a default initial sort. However, if you want to set a default initial sort, you can do so by using the addSort(SortCriteria) method of TableRowGroup. When the table is rendered, the data is sorted and the primary sort column is highlighted. 


<!-- Sortable Table -->
<ui:table id="table1"
    clearSortButton="true"
    sortPanelToggleButton="true"
    title="Sortable Table">
  <ui:tableRowGroup id="rowGroup1"
      sourceData="#{TableBean.groupB.names}" sourceVar="name">
    <ui:tableColumn id="col1"
        alignKey="last"
        headerText="Last Name"
        rowHeader="true"
        sort="last">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2"
        alignKey="first"
        headerText="First Name"
        sort="first">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>

Example 2: Select Single Row

This example shows a column of radioButton components that are used to select a single table row. Dynamic row highlighting is set by invoking an initAllRows() JavaScript function whenever the state of the radio button changes. The initAllRows() function is defined in select.js shown below. The radio button state is maintained through the selected attribute of the ui:tableRowGroup tag. This example does not maintain state across paginated pages.

Note: UI guidelines recommend that items should not remain selected when they cannot be seen by the user. Using the com.sun.rave.web.ui.event.TableSelectPhaseListener object ensures that rows that are hidden from view are deselected because the phase listener clears the selected state after the rendering phase. The TableSelectPhaseListener object is used in this example in Select.java in the ui:table documentation.  Also refer to the JavaDoc for TableSelectPhaseListener for more information. 

<!-- Single Select Row -->
<ui:table id="table1"
    deselectSingleButton="true"
    paginateButton="true"
    paginationControls="true"
    title="Select Single Row">
  <ui:tableRowGroup id="rowGroup1"
      selected="#{TableBean.groupA.select.selectedState}"
      sourceData="#{TableBean.groupA.names}"
      sourceVar="name" rows="5">
    <ui:tableColumn id="col0"
        onClick="setTimeout('initAllRows()', 0)"
        selectId="select"
        sort="#{TableBean.groupA.select.selectedState}">
      <ui:radioButton id="select"
          name="select"
          selected="#{TableBean.groupA.select.selected}"
          selectedValue="#{TableBean.groupA.select.selectedValue}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col1"
        alignKey="last" headerText="Last Name" rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2" alignKey="first" headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>


select.js

This example shows the contents of the select.js file used in the example above.

// Use this function to initialize all rows displayed in the table when the
// state of selected components change (i.e., checkboxes or radiobuttons used to
// de/select rows of the table). This functionality requires the selectId
// property of the tableColumn component to be set.
//
// Note: Use setTimeout when invoking this function. This will ensure that
// checkboxes and radiobutton are selected immediately, instead of waiting for
// the onClick event to complete. For example:
//
// onClick="setTimeout('initAllRows(); disableActions()', 0)"
function initAllRows() {
    // Disable table actions by default.
    var table = document.getElementById("form1:table1");
    table.initAllRows();
}

Example 3: Select Multiple Rows

This example shows a column of checkbox components that are used to select multiple table rows. Dynamic row highlighting is set by invoking an initAllRows() JavaScript function whenever the state of the checkbox changes. The initAllRows() function is defined in  select.js in the previous example. The checkbox state is maintained through the selected attribute of the ui:tableRowGroup tag. This example does not maintain state across paginated pages.

Note: UI guidelines recommend that items should not remain selected when they cannot be seen by the user. Using the com.sun.rave.web.ui.event.TableSelectPhaseListener object ensures that rows that are hidden from view are deselected because the phase listener clears the selected state after the rendering phase. The TableSelectPhaseListener object is used in this example in
Select.java, shown in the ui:table documentation.  Also refer to the JavaDoc for TableSelectPhaseListener for more information. 

<!-- Select Multiple Rows -->
<ui:table id="table1"
    deselectMultipleButton="true"
    selectMultipleButton="true"
    paginateButton="true"
    paginationControls="true"
    title="Select Multiple Rows">
  <ui:tableRowGroup id="rowGroup1"
      selected="#{TableBean.groupA.select.selectedState}"
      sourceData="#{TableBean.groupA.names}"
      sourceVar="name" rows="5">
    <ui:tableColumn id="col0"
        selectId="select" sort="#{TableBean.groupA.select.selectedState}">
      <ui:checkbox id="select"
          onClick="setTimeout('initAllRows()', 0)"
          selected="#{TableBean.groupA.select.selected}"
          selectedValue="#{TableBean.groupA.select.selectedValue}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col1"
        alignKey="last" headerText="Last Name" rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2" alignKey="first" headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>

Example 4: Hidden Selected Rows

This example is the same as Example 3: Select Multiple Rows except that it maintains state across paginated pages, and shows how to deal appropriately with the possibility of hiding rows that have been selected.  As in the previous example, the first column is a column of checkboxes that can be used to select multiple rows. The checkbox state is maintained through the selected attribute of the ui:tableRowGroup tag.  Dynamic row highlighting is set by invoking an initAllRows() JavaScript function whenever the state of the checkbox changes. The initAllRows() function is defined in  select.js in the previous example.

If your table must maintain state, you must set the hiddenSelectedRows attribute to true in the ui:table tag as shown in this example. The attribute causes text to be displayed in the table title and footer to indicate the number of selected rows that are currently hidden from view.  See the Select.java utility class in the ui:table documentation.

<!-- Hidden Selected Rows -->
<ui:table id="table1"
    deselectMultipleButton="true"
    deselectMultipleButtonOnClick="setTimeout('disableActions()', 0)"
    hiddenSelectedRows="true"
    paginateButton="true"
    paginationControls="true"
    selectMultipleButton="true"
    selectMultipleButtonOnClick="setTimeout('disableActions()', 0)"
    title="Hidden Selected Rows">
  <ui:tableRowGroup id="rowGroup1"
      binding="#{TableBean.groupA.tableRowGroup}"
      selected="#{TableBean.groupA.select.selectedState}"
      sourceData="#{TableBean.groupA.names}"
      sourceVar="name" rows="5">
    <ui:tableColumn id="col0"
        selectId="select"
        sort="#{TableBean.groupA.select.selectedState}">
      <ui:checkbox id="select"
          binding="#{TableBean.groupA.checkbox}"
          onClick="setTimeout('initAllRows(); disableActions()', 0)"
          selected="#{TableBean.groupA.select.selected}"
          selectedValue="#{TableBean.groupA.select.selectedValue}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col1"
        alignKey="last" headerText="Last Name" rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2" alignKey="first" headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>

  <!-- Actions (Top) -->
  <f:facet name="actionsTop">
    <f:subview id="actionsTop">
      <jsp:include page="actionsTop.jsp"/>
    </f:subview>
  </f:facet>

  <!-- Actions (Bottom) -->
  <f:facet name="actionsBottom">
    <f:subview id="actionsBottom">
      <jsp:include page="actionsBottom.jsp"/>
    </f:subview>
  </f:facet>
</ui:table>

Example 5: Spacer Column

This example shows how to create a blank column to use for spacing in a table. The spacer column is especially useful in two-column tables. A property table, which is used to display properties for a single object, typically includes two data columns. The first column identifies the properties of the object, and the second column displays the values for each of the properties. Because tables created with the ui:table tag expand to the width of the browser window, the two data columns might become so wide that the properties and their values are not close together, and readability is reduced. To solve this problem, you can add a spacer column to one side of the table.

In the example, the third column includes the spacerColumn attribute set to true, and the width attribute set to 70%. The column has no header or footer text, and no data. This column acts to always keep the data of the first two columns in close proximity.  If a column header and footer are required, provide an empty string for the headerText and footerText attributes. Set the width attribute to a value that achieves the desired spacing.


<!-- Spacer Column -->
<ui:table id="table1" title="Spacer Column">
  <ui:tableRowGroup id="rowGroup1"
      sourceData="#{TableBean.groupB.names}" sourceVar="name">
    <ui:tableColumn id="col1"
        alignKey="last"
        footerText="Column Footer"
        headerText="Last Name"
        rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2"
        alignKey="first"
        footerText="Column Footer"
        headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col3" spacerColumn="true" width="70%"/>
  </ui:tableRowGroup>
</ui:table>

Example 6: Empty Cells

This example shows how to display a theme-specific icon that indicates an empty cell, when the content of a table cell is not applicable or is unexpectedly empty. UI guidelines suggest that the empty cell icon should not be used for a value that is truly null, such as an empty alarm cell or a comment field that is blank. In addition, the icon should not be used for cells that contain user interface elements such as checkboxes or drop-down lists when these elements are not applicable. Instead, the elements should not be displayed so the cell is left empty.

In this example, the emptyCell attribute is set to an expression that evaluates to true in every fifth row. In your application, it is up to you to decide how to test if the cell is truly empty. For example, you could use this syntax: emptyCell="#{name.value.last == null}"

<!-- Empty Cells -->
<ui:table id="table1" title="Empty Cells">
  <ui:tableRowGroup id="rowGroup1"
      selected="#{TableBean.groupB.select.selectedState}"
      sourceData="#{TableBean.groupB.names}"
      sourceVar="name" rows="5">
    <ui:tableColumn id="col0"
        emptyCell="#{name.tableRow.rowId % 5 == 0}"
        selectId="select">
      <ui:checkbox id="select"
          onClick="setTimeout('initAllRows()', 0)"
          selected="#{TableBean.groupB.select.selected}"
          selectedValue="#{TableBean.groupB.select.selectedValue}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col1"
        emptyCell="#{name.tableRow.rowId % 5 == 0}"
        alignKey="last"
        headerText="Last Name"
        rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2"
        emptyCell="#{name.tableRow.rowId % 5 == 0}"
        alignKey="first"
        headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>

Example 7: Embedded Actions

This example shows how to add embedded actions to a table. If the ui:tableColumn tag contains more than one tag such as ui:hyperlink that are used as embedded actions, you should set the ui:tableColumn tag's embeddedActions attribute to true. This attribute causes an action separator image to be displayed between each of the rendered hyperlinks, as recommended in UI guidelines.

<!-- Embedded Actions -->
<ui:table id="table1" title="Embedded Actions">
  <ui:tableRowGroup id="rowGroup1"
      sourceData="#{TableBean.groupB.names}" sourceVar="name">
    <ui:tableColumn id="col0" embeddedActions="true" headerText="Actions">
      <ui:hyperlink id="action1"
          action="#{TableBean.groupB.actions.action}"
          text="Action 1">
        <f:param name="param" value="#{name.value.last}"/>
      </ui:hyperlink>
      <ui:hyperlink id="action2"
          action="#{TableBean.groupB.actions.action}"
          text="Action 2">
        <f:param name="param" value="#{name.tableRow.rowId}"/>
      </ui:hyperlink>
    </ui:tableColumn>
    <ui:tableColumn id="col1"
        alignKey="last" headerText="Last Name" rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2" alignKey="first" headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>

Example 8: Alarms

This example shows how to add alarms to table data cells. The second ui:tableColumn tag includes a ui:alarm tag to render the alarm icon. The ui:tableColumn tag's severity  attribute is set to true, which causes the table data cell to appear highlighted according to level of severity.  Note also that the column is set to sort on the severity of the alarms. See the TableBean backing bean and  Name.java utlity class example in the ui:table documentation for the model data.

<!-- Alarms -->
<ui:table id="table1" title="Alarms">
  <ui:tableRowGroup id="rowGroup1"
      sourceData="#{TableBean.groupB.names}" sourceVar="name">
    <ui:tableColumn id="col1"
        alignKey="last"
        headerText="Last Name"
        rowHeader="true"
        sort="last">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2"
        alignKey="first"
        headerText="First Name"
        severity="#{name.value.severity}"
        sort="alarm">
      <ui:alarm id="alarm" severity="#{name.value.severity}"/>
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>

Example 9: Multiple Column Headers & Footers

This example shows how to use nested tableColumn components to create multiple headers and footers. The column header of the parent tableColumn component will span the nested tableColumn children. Not all attributes are supported in this configuration. Typically, only the header, footer, tableFooter, and sort would apply to a header and spaning multuple columns. Sorting is supported, but is recommended only for tableColumn children. Further, nesting tableColumn components will render; however, the styles used here support one level of nexting.

This example shows how to use nested ui:tableColumn tags to create multiple headers and footers. The third ui:tableColumn (col3) contains four nested columns col3a, col3b, col3c, and col3d. The column header specified in col3 spans the four nested columns.  However, not all ui:tableColumn attributes are supported when the tags are nested. Typically, only the header, footer, tableFooter, and sort would apply to a header and spaning multiple columns. Sorting in the parent tableColumn is supported, but for usability, sorting is recommended only for tableColumn children. In addition, nesting of more than one level of tableColumn components will render, but the CSS styles only support one level of nesting.   

<!-- Multiple Headers &amp; Footers -->
<ui:table id="table1"
    clearSortButton="true"
    deselectMultipleButton="true"
    deselectMultipleButtonOnClick="setTimeout('disableActions()', 0)"
    footerText="Table Footer"
    paginateButton="true"
    paginationControls="true"
    selectMultipleButton="true"
    selectMultipleButtonOnClick="setTimeout('disableActions()', 0)"
    sortPanelToggleButton="true"
    title="Multiple Headers &amp; Footers">
  <ui:tableRowGroup id="rowGroup1"
      binding="#{TableBean.groupA.tableRowGroup}"
      rows="#{TableBean.groupA.preferences.rows}"
      selected="#{TableBean.groupA.select.selectedState}"
      sourceData="#{TableBean.groupA.names}"
      sourceVar="name">
    <ui:tableColumn id="col0"
        selectId="select"
        sort="#{TableBean.groupA.select.selectedState}">
      <ui:checkbox id="select"
          onClick="setTimeout('initAllRows(); disableActions()', 0)"
          selected="#{TableBean.groupA.select.selected}"
          selectedValue="#{TableBean.groupA.select.selectedValue}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col1"
        alignKey="last"
        headerText="Last Name"
        rowHeader="true">
      <ui:staticText text="#{name.value.last}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col2"
        alignKey="first" headerText="First Name">
      <ui:staticText text="#{name.value.first}"/>
    </ui:tableColumn>
    <ui:tableColumn id="col3" headerText="Task Status">
     
      <!-- Nested Columns -->
      <ui:tableColumn id="col3a"
          headerText="A"
          footerText="ColFtrA"
          sort="last"
          sortIcon="ALARM_CRITICAL_MEDIUM"
          tableFooterText="TblFtrA">
        <ui:staticText text="a"/>
      </ui:tableColumn>
      <ui:tableColumn id="col3b"
          headerText="B"
          footerText="ColFtrB"
          sort="first"
          sortIcon="ALARM_MAJOR_MEDIUM"
          tableFooterText="TblFtrB">
        <ui:staticText text="b"/>
      </ui:tableColumn>
      <ui:tableColumn id="col3c"
          headerText="C"
          footerText="ColFtrC"
          sortIcon="ALARM_MINOR_MEDIUM"
          tableFooterText="TblFtrC">
        <ui:staticText text="c"/>
      </ui:tableColumn>
      <ui:tableColumn id="col3d"
          headerText="D"
          footerText="ColFtrD"
          sortIcon="ALARM_DOWN_MEDIUM"
          tableFooterText="TblFtrD">
        <ui:staticText text="d"/>
      </ui:tableColumn>
    </ui:tableColumn>
  </ui:tableRowGroup>
</ui:table>

faces_config.xml Entry for Managed Beans

The examples use the TableBean managed bean, which requires the following entry to be added to the faces_config.xml file.

<!DOCTYPE faces-config PUBLIC
    '-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN'
    'http://java.sun.com/dtd/web-facesconfig_1_1.dtd'>

<faces-config>
    <managed-bean>
        <description>The backing bean for the table example</description>
        <managed-bean-name>TableBean</managed-bean-name>
        <managed-bean-class>table.TableBean</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
</faces-config>

Auto-generated component class. Do NOT modify; all changes will be lost!


Constructor Summary
TableColumnBase()
          Construct a new TableColumnBase.
 
Method Summary
 java.lang.String getAbbr()
          An abbreviated version of the cell's content
 java.lang.String getAlign()
          Sets the horizontal alignment (left, right, justify, center) for the cell contents
 java.lang.Object getAlignKey()
          Use the alignKey attribute to specify the FieldKey id or FieldKey to be used as an identifier for a specific data element on which to align the table cell data in the column.
 java.lang.String getAxis()
          Provides a method for categorizing cells
 java.lang.String getBgColor()
           
 java.lang.String getChar()
           
 java.lang.String getCharOff()
           
 int getColSpan()
          The number of columns spanned by a cell
 java.lang.String getExtraFooterHtml()
          Extra HTML code to be appended to the <td> HTML element that is rendered for the column footer.
 java.lang.String getExtraHeaderHtml()
          Extra HTML code to be appended to the <th> HTML element that is rendered for the column header.
 java.lang.String getExtraTableFooterHtml()
          Extra HTML code to be appended to the <td> HTML element that is rendered for the table column footer.
 java.lang.String getFamily()
          Return the family for this component.
 java.lang.String getFooterText()
          The text to be displayed in the column footer.
 java.lang.String getHeaders()
          Space separated list of header cell ID values
 java.lang.String getHeaderText()
          The text to be displayed in the column header.
 java.lang.String getHeight()
          Set the cell height in pixels (deprecated in HTML 4.0)
 java.lang.String getOnClick()
          Scripting code executed when a mouse click occurs over this component.
 java.lang.String getOnDblClick()
          Scripting code executed when a mouse double click occurs over this component.
 java.lang.String getOnKeyDown()
          Scripting code executed when the user presses down on a key while the component has focus.
 java.lang.String getOnKeyPress()
          Scripting code executed when the user presses and releases a key while the component has focus.
 java.lang.String getOnKeyUp()
          Scripting code executed when the user releases a key while the component has focus.
 java.lang.String getOnMouseDown()
          Scripting code executed when the user presses a mouse button while the mouse pointer is on the component.
 java.lang.String getOnMouseMove()
          Scripting code executed when the user moves the mouse pointer while over the component.
 java.lang.String getOnMouseOut()
          Scripting code executed when a mouse out movement occurs over this component.
 java.lang.String getOnMouseOver()
          Scripting code executed when the user moves the mouse pointer into the boundary of this component.
 java.lang.String getOnMouseUp()
          Scripting code executed when the user releases a mouse button while the mouse pointer is on the component.
 int getRowSpan()
          The number of rows spanned by a cell
 java.lang.String getScope()
          Indicates that information in a cell is also acting as a header
 java.lang.String getSelectId()
          Use the selectId attribute in select columns, which contain checkboxes or radio buttons for selecting table rows.
 java.lang.String getSeverity()
          Use the severity attribute when including the ui:alarm component in a column, to match the severity of the alarm.
 java.lang.Object getSort()
          Use the sort attribute to specify a FieldKey id or SortCriteria that defines the criteria to use for sorting the contents of a TableDataProvider.
 java.lang.String getSortIcon()
          The theme identifier to use for the sort button that is displayed in the column header.
 java.lang.String getSortImageURL()
          Absolute or relative URL to the image used for the sort button that is displayed in the column header.
 java.lang.String getStyle()
          CSS style(s) to be applied when this component is rendered.
 java.lang.String getStyleClass()
          CSS style class(es) to be applied when this component is rendered.
 java.lang.String getTableFooterText()
          The text to be displayed in the table column footer.
 java.lang.String getToolTip()
          Display the text as a tooltip for this component
 java.lang.String getValign()
          Vertical alignment (top, middle, bottom) for the content of each cell in the column
 java.lang.String getWidth()
          Set the width of the column in either pixels or percent(deprecated in HTML 4.0)
 boolean isDescending()
          Use the descending attribute to specify that the first user-applied sort is descending.
 boolean isEmbeddedActions()
          Set the embeddedActions attribute to true when the column includes more than one embedded action.
 boolean isEmptyCell()
          Use the emptyCell attribute to cause a theme-specific image to be displayed when the content of a table cell is not applicable or is unexpectedly empty.
 boolean isNoWrap()
          Disable word wrapping (deprecated in HTML 4.0)
 boolean isRowHeader()
          Use the rowHeader attribute to specify that the cells of the column are acting as row headers.
 boolean isSpacerColumn()
          Use the spacerColumn attribute to use the column as a blank column to enhance spacing in two or three column tables.
 boolean isVisible()
          Use the visible attribute to indicate whether the component should be viewable by the user in the rendered HTML page.
 void restoreState(javax.faces.context.FacesContext _context, java.lang.Object _state)
          Restore the state of this component.
 java.lang.Object saveState(javax.faces.context.FacesContext _context)
          Save the state of this component.
 void setAbbr(java.lang.String abbr)
          An abbreviated version of the cell's content
 void setAlign(java.lang.String align)
          Sets the horizontal alignment (left, right, justify, center) for the cell contents
 void setAlignKey(java.lang.Object alignKey)
          Use the alignKey attribute to specify the FieldKey id or FieldKey to be used as an identifier for a specific data element on which to align the table cell data in the column.
 void setAxis(java.lang.String axis)
          Provides a method for categorizing cells
 void setBgColor(java.lang.String bgColor)
           
 void setChar(java.lang.String _char)
           
 void setCharOff(java.lang.String charOff)
           
 void setColSpan(int colSpan)
          The number of columns spanned by a cell
 void setDescending(boolean descending)
          Use the descending attribute to specify that the first user-applied sort is descending.
 void setEmbeddedActions(boolean embeddedActions)
          Set the embeddedActions attribute to true when the column includes more than one embedded action.
 void setEmptyCell(boolean emptyCell)
          Use the emptyCell attribute to cause a theme-specific image to be displayed when the content of a table cell is not applicable or is unexpectedly empty.
 void setExtraFooterHtml(java.lang.String extraFooterHtml)
          Extra HTML code to be appended to the <td> HTML element that is rendered for the column footer.
 void setExtraHeaderHtml(java.lang.String extraHeaderHtml)
          Extra HTML code to be appended to the <th> HTML element that is rendered for the column header.
 void setExtraTableFooterHtml(java.lang.String extraTableFooterHtml)
          Extra HTML code to be appended to the <td> HTML element that is rendered for the table column footer.
 void setFooterText(java.lang.String footerText)
          The text to be displayed in the column footer.
 void setHeaders(java.lang.String headers)
          Space separated list of header cell ID values
 void setHeaderText(java.lang.String headerText)
          The text to be displayed in the column header.
 void setHeight(java.lang.String height)
          Set the cell height in pixels (deprecated in HTML 4.0)
 void setNoWrap(boolean noWrap)
          Disable word wrapping (deprecated in HTML 4.0)
 void setOnClick(java.lang.String onClick)
          Scripting code executed when a mouse click occurs over this component.
 void setOnDblClick(java.lang.String onDblClick)
          Scripting code executed when a mouse double click occurs over this component.
 void setOnKeyDown(java.lang.String onKeyDown)
          Scripting code executed when the user presses down on a key while the component has focus.
 void setOnKeyPress(java.lang.String onKeyPress)
          Scripting code executed when the user presses and releases a key while the component has focus.
 void setOnKeyUp(java.lang.String onKeyUp)
          Scripting code executed when the user releases a key while the component has focus.
 void setOnMouseDown(java.lang.String onMouseDown)
          Scripting code executed when the user presses a mouse button while the mouse pointer is on the component.
 void setOnMouseMove(java.lang.String onMouseMove)
          Scripting code executed when the user moves the mouse pointer while over the component.
 void setOnMouseOut(java.lang.String onMouseOut)
          Scripting code executed when a mouse out movement occurs over this component.
 void setOnMouseOver(java.lang.String onMouseOver)
          Scripting code executed when the user moves the mouse pointer into the boundary of this component.
 void setOnMouseUp(java.lang.String onMouseUp)
          Scripting code executed when the user releases a mouse button while the mouse pointer is on the component.
 void setRowHeader(boolean rowHeader)
          Use the rowHeader attribute to specify that the cells of the column are acting as row headers.
 void setRowSpan(int rowSpan)
          The number of rows spanned by a cell
 void setScope(java.lang.String scope)
          Indicates that information in a cell is also acting as a header
 void setSelectId(java.lang.String selectId)
          Use the selectId attribute in select columns, which contain checkboxes or radio buttons for selecting table rows.
 void setSeverity(java.lang.String severity)
          Use the severity attribute when including the ui:alarm component in a column, to match the severity of the alarm.
 void setSort(java.lang.Object sort)
          Use the sort attribute to specify a FieldKey id or SortCriteria that defines the criteria to use for sorting the contents of a TableDataProvider.
 void setSortIcon(java.lang.String sortIcon)
          The theme identifier to use for the sort button that is displayed in the column header.
 void setSortImageURL(java.lang.String sortImageURL)
          Absolute or relative URL to the image used for the sort button that is displayed in the column header.
 void setSpacerColumn(boolean spacerColumn)
          Use the spacerColumn attribute to use the column as a blank column to enhance spacing in two or three column tables.
 void setStyle(java.lang.String style)
          CSS style(s) to be applied when this component is rendered.
 void setStyleClass(java.lang.String styleClass)
          CSS style class(es) to be applied when this component is rendered.
 void setTableFooterText(java.lang.String tableFooterText)
          The text to be displayed in the table column footer.
 void setToolTip(java.lang.String toolTip)
          Display the text as a tooltip for this component
 void setValign(java.lang.String valign)
          Vertical alignment (top, middle, bottom) for the content of each cell in the column
 void setVisible(boolean visible)
          Use the visible attribute to indicate whether the component should be viewable by the user in the rendered HTML page.
 void setWidth(java.lang.String width)
          Set the width of the column in either pixels or percent(deprecated in HTML 4.0)
 
Methods inherited from class javax.faces.component.UIComponentBase
addFacesListener, broadcast, decode, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientId, getFacesContext, getFacesListeners, getFacet, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getRendersChildren, getValueBinding, isRendered, isTransient, processDecodes, processRestoreState, processSaveState, processUpdates, processValidators, queueEvent, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TableColumnBase

public TableColumnBase()

Construct a new TableColumnBase.

Method Detail

getFamily

public java.lang.String getFamily()

Return the family for this component.


getAbbr

public java.lang.String getAbbr()

An abbreviated version of the cell's content


setAbbr

public void setAbbr(java.lang.String abbr)

An abbreviated version of the cell's content

See Also:
getAbbr()

getAlign

public java.lang.String getAlign()

Sets the horizontal alignment (left, right, justify, center) for the cell contents


setAlign

public void setAlign(java.lang.String align)

Sets the horizontal alignment (left, right, justify, center) for the cell contents

See Also:
getAlign()

getAlignKey

public java.lang.Object getAlignKey()

Use the alignKey attribute to specify the FieldKey id or FieldKey to be used as an identifier for a specific data element on which to align the table cell data in the column. If alignKey specifies a FieldKey, the FieldKey is used as is; otherwise, a FieldKey is created using the alignKey value that you specify. Alignment is based on the object type of the data element. For example, Date and Number objects are aligned "right", Character and String objects are aligned "left", and Boolean objects are aligned "center". All columns, including select columns, are aligned "left" by default. Note that the align property overrides this value.


setAlignKey

public void setAlignKey(java.lang.Object alignKey)

Use the alignKey attribute to specify the FieldKey id or FieldKey to be used as an identifier for a specific data element on which to align the table cell data in the column. If alignKey specifies a FieldKey, the FieldKey is used as is; otherwise, a FieldKey is created using the alignKey value that you specify. Alignment is based on the object type of the data element. For example, Date and Number objects are aligned "right", Character and String objects are aligned "left", and Boolean objects are aligned "center". All columns, including select columns, are aligned "left" by default. Note that the align property overrides this value.

See Also:
getAlignKey()

getAxis

public java.lang.String getAxis()

Provides a method for categorizing cells


setAxis

public void setAxis(java.lang.String axis)

Provides a method for categorizing cells

See Also:
getAxis()

getBgColor

public java.lang.String getBgColor()

setBgColor

public void setBgColor(java.lang.String bgColor)

getChar

public java.lang.String getChar()

setChar

public void setChar(java.lang.String _char)

getCharOff

public java.lang.String getCharOff()

setCharOff

public void setCharOff(java.lang.String charOff)

getColSpan

public int getColSpan()

The number of columns spanned by a cell


setColSpan

public void setColSpan(int colSpan)

The number of columns spanned by a cell

See Also:
getColSpan()

isDescending

public boolean isDescending()

Use the descending attribute to specify that the first user-applied sort is descending. By default, the first time a user clicks a column's sort button or column header, the sort is ascending. Note that this not an initial sort. The data is initially displayed unsorted.


setDescending

public void setDescending(boolean descending)

Use the descending attribute to specify that the first user-applied sort is descending. By default, the first time a user clicks a column's sort button or column header, the sort is ascending. Note that this not an initial sort. The data is initially displayed unsorted.

See Also:
isDescending()

isEmbeddedActions

public boolean isEmbeddedActions()

Set the embeddedActions attribute to true when the column includes more than one embedded action. This attribute causes a separator image to be displayed between the action links. This attribute is overridden by the emptyCell attribute.


setEmbeddedActions

public void setEmbeddedActions(boolean embeddedActions)

Set the embeddedActions attribute to true when the column includes more than one embedded action. This attribute causes a separator image to be displayed between the action links. This attribute is overridden by the emptyCell attribute.

See Also:
isEmbeddedActions()

isEmptyCell

public boolean isEmptyCell()

Use the emptyCell attribute to cause a theme-specific image to be displayed when the content of a table cell is not applicable or is unexpectedly empty. You should not use this attribute for a value that is truly null, such as an empty alarm cell or a comment field that is blank. In addition, the image should not be used for cells that contain user interface elements such as checkboxes or drop-down lists when these elements are not applicable. Instead, the elements should simply not be displayed so the cell is left empty.


setEmptyCell

public void setEmptyCell(boolean emptyCell)

Use the emptyCell attribute to cause a theme-specific image to be displayed when the content of a table cell is not applicable or is unexpectedly empty. You should not use this attribute for a value that is truly null, such as an empty alarm cell or a comment field that is blank. In addition, the image should not be used for cells that contain user interface elements such as checkboxes or drop-down lists when these elements are not applicable. Instead, the elements should simply not be displayed so the cell is left empty.

See Also:
isEmptyCell()

getExtraFooterHtml

public java.lang.String getExtraFooterHtml()

Extra HTML code to be appended to the <td> HTML element that is rendered for the column footer. Use only code that is valid in an HTML <td> element. The code you specify is inserted in the HTML element, and is not checked for validity. For example, you might set this attribute to "nowrap=`nowrap'".


setExtraFooterHtml

public void setExtraFooterHtml(java.lang.String extraFooterHtml)

Extra HTML code to be appended to the <td> HTML element that is rendered for the column footer. Use only code that is valid in an HTML <td> element. The code you specify is inserted in the HTML element, and is not checked for validity. For example, you might set this attribute to "nowrap=`nowrap'".

See Also:
getExtraFooterHtml()

getExtraHeaderHtml

public java.lang.String getExtraHeaderHtml()

Extra HTML code to be appended to the <th> HTML element that is rendered for the column header. Use only code that is valid in an HTML <td> element. The code you specify is inserted in the HTML element, and is not checked for validity. For example, you might set this attribute to "nowrap=`nowrap'".


setExtraHeaderHtml

public void setExtraHeaderHtml(java.lang.String extraHeaderHtml)

Extra HTML code to be appended to the <th> HTML element that is rendered for the column header. Use only code that is valid in an HTML <td> element. The code you specify is inserted in the HTML element, and is not checked for validity. For example, you might set this attribute to "nowrap=`nowrap'".

See Also:
getExtraHeaderHtml()

getExtraTableFooterHtml

public java.lang.String getExtraTableFooterHtml()

Extra HTML code to be appended to the <td> HTML element that is rendered for the table column footer. Use only code that is valid in an HTML <td> element. The code you specify is inserted in the HTML element, and is not checked for validity. For example, you might set this attribute to "nowrap=`nowrap'".


setExtraTableFooterHtml

public void setExtraTableFooterHtml(java.lang.String extraTableFooterHtml)

Extra HTML code to be appended to the <td> HTML element that is rendered for the table column footer. Use only code that is valid in an HTML <td> element. The code you specify is inserted in the HTML element, and is not checked for validity. For example, you might set this attribute to "nowrap=`nowrap'".

See Also:
getExtraTableFooterHtml()

getFooterText

public java.lang.String getFooterText()

The text to be displayed in the column footer.


setFooterText

public void setFooterText(java.lang.String footerText)

The text to be displayed in the column footer.

See Also:
getFooterText()

getHeaderText

public java.lang.String getHeaderText()

The text to be displayed in the column header.


setHeaderText

public void setHeaderText(java.lang.String headerText)

The text to be displayed in the column header.

See Also:
getHeaderText()

getHeaders

public java.lang.String getHeaders()

Space separated list of header cell ID values


setHeaders

public void setHeaders(java.lang.String headers)

Space separated list of header cell ID values

See Also:
getHeaders()

getHeight

public java.lang.String getHeight()

Set the cell height in pixels (deprecated in HTML 4.0)


setHeight

public void setHeight(java.lang.String height)

Set the cell height in pixels (deprecated in HTML 4.0)

See Also:
getHeight()

isNoWrap

public boolean isNoWrap()

Disable word wrapping (deprecated in HTML 4.0)


setNoWrap

public void setNoWrap(boolean noWrap)

Disable word wrapping (deprecated in HTML 4.0)

See Also:
isNoWrap()

getOnClick

public java.lang.String getOnClick()

Scripting code executed when a mouse click occurs over this component.


setOnClick

public void setOnClick(java.lang.String onClick)

Scripting code executed when a mouse click occurs over this component.

See Also:
getOnClick()

getOnDblClick

public java.lang.String getOnDblClick()

Scripting code executed when a mouse double click occurs over this component.


setOnDblClick

public void setOnDblClick(java.lang.String onDblClick)

Scripting code executed when a mouse double click occurs over this component.

See Also:
getOnDblClick()

getOnKeyDown

public java.lang.String getOnKeyDown()

Scripting code executed when the user presses down on a key while the component has focus.


setOnKeyDown

public void setOnKeyDown(java.lang.String onKeyDown)

Scripting code executed when the user presses down on a key while the component has focus.

See Also:
getOnKeyDown()

getOnKeyPress

public java.lang.String getOnKeyPress()

Scripting code executed when the user presses and releases a key while the component has focus.


setOnKeyPress

public void setOnKeyPress(java.lang.String onKeyPress)

Scripting code executed when the user presses and releases a key while the component has focus.

See Also:
getOnKeyPress()

getOnKeyUp

public java.lang.String getOnKeyUp()

Scripting code executed when the user releases a key while the component has focus.


setOnKeyUp

public void setOnKeyUp(java.lang.String onKeyUp)

Scripting code executed when the user releases a key while the component has focus.

See Also:
getOnKeyUp()

getOnMouseDown

public java.lang.String getOnMouseDown()

Scripting code executed when the user presses a mouse button while the mouse pointer is on the component.


setOnMouseDown

public void setOnMouseDown(java.lang.String onMouseDown)

Scripting code executed when the user presses a mouse button while the mouse pointer is on the component.

See Also:
getOnMouseDown()

getOnMouseMove

public java.lang.String getOnMouseMove()

Scripting code executed when the user moves the mouse pointer while over the component.


setOnMouseMove

public void setOnMouseMove(java.lang.String onMouseMove)

Scripting code executed when the user moves the mouse pointer while over the component.

See Also:
getOnMouseMove()

getOnMouseOut

public java.lang.String getOnMouseOut()

Scripting code executed when a mouse out movement occurs over this component.


setOnMouseOut

public void setOnMouseOut(java.lang.String onMouseOut)

Scripting code executed when a mouse out movement occurs over this component.

See Also:
getOnMouseOut()

getOnMouseOver

public java.lang.String getOnMouseOver()

Scripting code executed when the user moves the mouse pointer into the boundary of this component.


setOnMouseOver

public void setOnMouseOver(java.lang.String onMouseOver)

Scripting code executed when the user moves the mouse pointer into the boundary of this component.

See Also:
getOnMouseOver()

getOnMouseUp

public java.lang.String getOnMouseUp()

Scripting code executed when the user releases a mouse button while the mouse pointer is on the component.


setOnMouseUp

public void setOnMouseUp(java.lang.String onMouseUp)

Scripting code executed when the user releases a mouse button while the mouse pointer is on the component.

See Also:
getOnMouseUp()

isRowHeader

public boolean isRowHeader()

Use the rowHeader attribute to specify that the cells of the column are acting as row headers. Row headers are cells that "label" the row. For example, consider a table where the first column contains checkboxes, and the second column contains user names. The third and subsequent columns contain attributes of those users. The content of the cells in the user name column are acting as row headers. The ui:tableColumn tag for the user name column should set the rowHeader attribute to true. If a table contains, for example, a system log with time stamp and log entry columns, neither column is acting as a row header, so the rowHeader attribute should not be set.

By default, most column cells are rendered by the table component with HTML <td scope="col"> elements. The exceptions are columns that contain checkboxes or radio buttons and spacer columns, all of which are rendered as <td> elements without a scope property.

When you set the rowHeader attribute, the column cells are rendered as <th scope="row"> elements, which enables adaptive technologies such as screen readers to properly read the table to indicate that the contents of these cells are headers for the rows.


setRowHeader

public void setRowHeader(boolean rowHeader)

Use the rowHeader attribute to specify that the cells of the column are acting as row headers. Row headers are cells that "label" the row. For example, consider a table where the first column contains checkboxes, and the second column contains user names. The third and subsequent columns contain attributes of those users. The content of the cells in the user name column are acting as row headers. The ui:tableColumn tag for the user name column should set the rowHeader attribute to true. If a table contains, for example, a system log with time stamp and log entry columns, neither column is acting as a row header, so the rowHeader attribute should not be set.

By default, most column cells are rendered by the table component with HTML <td scope="col"> elements. The exceptions are columns that contain checkboxes or radio buttons and spacer columns, all of which are rendered as <td> elements without a scope property.

When you set the rowHeader attribute, the column cells are rendered as <th scope="row"> elements, which enables adaptive technologies such as screen readers to properly read the table to indicate that the contents of these cells are headers for the rows.

See Also:
isRowHeader()

getRowSpan

public int getRowSpan()

The number of rows spanned by a cell


setRowSpan

public void setRowSpan(int rowSpan)

The number of rows spanned by a cell

See Also:
getRowSpan()

getScope

public java.lang.String getScope()

Indicates that information in a cell is also acting as a header


setScope

public void setScope(java.lang.String scope)

Indicates that information in a cell is also acting as a header

See Also:
getScope()

getSelectId

public java.lang.String getSelectId()

Use the selectId attribute in select columns, which contain checkboxes or radio buttons for selecting table rows. The value of selectId must match the id attribute of the checkbox or radioButton component that is a child of the tableColumn component. A fully qualified ID based on the tableColumn component ID and the selectId for the current row will be dynamically created for the <input> element that is rendered for the checkbox or radio button. The selectId is required for functionality that supports the toggle buttons for selecting rows. The selectId also identifies the column as a select column, for which the table component uses different CSS styles.


setSelectId

public void setSelectId(java.lang.String selectId)

Use the selectId attribute in select columns, which contain checkboxes or radio buttons for selecting table rows. The value of selectId must match the id attribute of the checkbox or radioButton component that is a child of the tableColumn component. A fully qualified ID based on the tableColumn component ID and the selectId for the current row will be dynamically created for the <input> element that is rendered for the checkbox or radio button. The selectId is required for functionality that supports the toggle buttons for selecting rows. The selectId also identifies the column as a select column, for which the table component uses different CSS styles.

See Also:
getSelectId()

getSeverity

public java.lang.String getSeverity()

Use the severity attribute when including the ui:alarm component in a column, to match the severity of the alarm. Valid values are described in the ui:alarm documentation. When the severity attribute is set in the tableColumn, the table component renders sort tool tips to indicate that the column will be sorted least/most severe first, and the table cell appears hightlighted according to the level of severity. This functionality is overridden by the emptyCell attribute.


setSeverity

public void setSeverity(java.lang.String severity)

Use the severity attribute when including the ui:alarm component in a column, to match the severity of the alarm. Valid values are described in the ui:alarm documentation. When the severity attribute is set in the tableColumn, the table component renders sort tool tips to indicate that the column will be sorted least/most severe first, and the table cell appears hightlighted according to the level of severity. This functionality is overridden by the emptyCell attribute.

See Also:
getSeverity()

getSort

public java.lang.Object getSort()

Use the sort attribute to specify a FieldKey id or SortCriteria that defines the criteria to use for sorting the contents of a TableDataProvider. If SortCriteria is provided, the object is used for sorting as is. If an id is provided, a FieldIdSortCriteria is created for sorting. In addition, a value binding can also be used to sort on an object that is external to TableDataProvider, such as the selected state of a checkbox or radiobutton. When a value binding is used, a ValueBindingSortCriteria object is created for sorting. All sorting is based on the object type associated with the data element (for example, Boolean, Character, Comparator, Date, Number, and String). If the object type cannot be determined, the object is compared as a String. The sort attribute is required for a column to be shown as sortable.


setSort

public void setSort(java.lang.Object sort)

Use the sort attribute to specify a FieldKey id or SortCriteria that defines the criteria to use for sorting the contents of a TableDataProvider. If SortCriteria is provided, the object is used for sorting as is. If an id is provided, a FieldIdSortCriteria is created for sorting. In addition, a value binding can also be used to sort on an object that is external to TableDataProvider, such as the selected state of a checkbox or radiobutton. When a value binding is used, a ValueBindingSortCriteria object is created for sorting. All sorting is based on the object type associated with the data element (for example, Boolean, Character, Comparator, Date, Number, and String). If the object type cannot be determined, the object is compared as a String. The sort attribute is required for a column to be shown as sortable.

See Also:
getSort()

getSortIcon

public java.lang.String getSortIcon()

The theme identifier to use for the sort button that is displayed in the column header. Use this attribute to override the default image.


setSortIcon

public void setSortIcon(java.lang.String sortIcon)

The theme identifier to use for the sort button that is displayed in the column header. Use this attribute to override the default image.

See Also:
getSortIcon()

getSortImageURL

public java.lang.String getSortImageURL()

Absolute or relative URL to the image used for the sort button that is displayed in the column header.


setSortImageURL

public void setSortImageURL(java.lang.String sortImageURL)

Absolute or relative URL to the image used for the sort button that is displayed in the column header.

See Also:
getSortImageURL()

isSpacerColumn

public boolean isSpacerColumn()

Use the spacerColumn attribute to use the column as a blank column to enhance spacing in two or three column tables. When the spacerColumn attribute is true, the CSS styles applied to the column make it appear as if the columns are justified. If a column header and footer are required, provide an empty string for the headerText and footerText attributes. Set the width attribute to justify columns accordingly.


setSpacerColumn

public void setSpacerColumn(boolean spacerColumn)

Use the spacerColumn attribute to use the column as a blank column to enhance spacing in two or three column tables. When the spacerColumn attribute is true, the CSS styles applied to the column make it appear as if the columns are justified. If a column header and footer are required, provide an empty string for the headerText and footerText attributes. Set the width attribute to justify columns accordingly.

See Also:
isSpacerColumn()

getStyle

public java.lang.String getStyle()

CSS style(s) to be applied when this component is rendered.


setStyle

public void setStyle(java.lang.String style)

CSS style(s) to be applied when this component is rendered.

See Also:
getStyle()

getStyleClass

public java.lang.String getStyleClass()

CSS style class(es) to be applied when this component is rendered.


setStyleClass

public void setStyleClass(java.lang.String styleClass)

CSS style class(es) to be applied when this component is rendered.

See Also:
getStyleClass()

getTableFooterText

public java.lang.String getTableFooterText()

The text to be displayed in the table column footer. The table column footer is displayed once per table, and is especially useful in tables with multiple groups of rows.


setTableFooterText

public void setTableFooterText(java.lang.String tableFooterText)

The text to be displayed in the table column footer. The table column footer is displayed once per table, and is especially useful in tables with multiple groups of rows.

See Also:
getTableFooterText()

getToolTip

public java.lang.String getToolTip()

Display the text as a tooltip for this component


setToolTip

public void setToolTip(java.lang.String toolTip)

Display the text as a tooltip for this component

See Also:
getToolTip()

getValign

public java.lang.String getValign()

Vertical alignment (top, middle, bottom) for the content of each cell in the column


setValign

public void setValign(java.lang.String valign)

Vertical alignment (top, middle, bottom) for the content of each cell in the column

See Also:
getValign()

isVisible

public boolean isVisible()

Use the visible attribute to indicate whether the component should be viewable by the user in the rendered HTML page. If set to false, the HTML code for the component is present in the page, but the component is hidden with style attributes. By default, visible is set to true, so HTML for the component HTML is included and visible to the user. If the component is not visible, it can still be processed on subsequent form submissions because the HTML is present.


setVisible

public void setVisible(boolean visible)

Use the visible attribute to indicate whether the component should be viewable by the user in the rendered HTML page. If set to false, the HTML code for the component is present in the page, but the component is hidden with style attributes. By default, visible is set to true, so HTML for the component HTML is included and visible to the user. If the component is not visible, it can still be processed on subsequent form submissions because the HTML is present.

See Also:
isVisible()

getWidth

public java.lang.String getWidth()

Set the width of the column in either pixels or percent(deprecated in HTML 4.0)


setWidth

public void setWidth(java.lang.String width)

Set the width of the column in either pixels or percent(deprecated in HTML 4.0)

See Also:
getWidth()

restoreState

public void restoreState(javax.faces.context.FacesContext _context,
                         java.lang.Object _state)

Restore the state of this component.


saveState

public java.lang.Object saveState(javax.faces.context.FacesContext _context)

Save the state of this component.