Summary
Tag name: <s:autoUpdateDataTable>
UIComponent class: org.apache.myfaces.custom.autoupdatedatatable.AutoUpdateDataTable
Tag class: org.apache.myfaces.custom.autoupdatedatatable.AutoUpdateDataTableTag
Component type: org.apache.myfaces.AutoUpdateDataTable
Component family: javax.faces.Data
Renderer type: org.apache.myfaces.AutoUpdateDataTable
Renderer class: org.apache.myfaces.custom.autoupdatedatatable.AutoUpdateDataTableRenderer
Extended data_table that adds some additional features to the standard
data_table action: see attribute descriptions for preserveDataModel,
sortColumn, sortAscending and preserveSort.
NOTE: This component is deprecated. Use periodicalUpdate mechanism of partial page rendering instead
Usage
<s:autoUpdateDataTable [ all standard dataTable attributes allowed ] [ preserveDataModel="{true|false}" ] [ forceIdIndexFormula="value-binding" ] [ sortColumn="value-binding" ] [ sortAscending="value-binding" ] [ preserveSort="{true|false}" ] [ frequency="value-binding" ]> standard dataTable body (<h:column> tags and optional "header" and "footer" facets) </t:command_sortheader> <s:autoUpdateDataTable>
Instructions
THIS COMPONENT IS DEPRECATED!.
frequency - defines the time in seconds between the Ajax-Requests
Note - This component is different to others, it uses Ajax mechanisms to fetch data from the server, thus the backend binding can and will be used outside of the standard JSF lifecycle to deliver the data.
Use the autoUpdateDataTable tag always within a form tag.
It is also not very advisable, to put some input fields (or checkboxes, radio buttons, etc.) into the dataTable, since after every submit (which happens periodically) all the form data is cleared.
see examples/ajaxDataTableSingle.jsp for an example.
Supported Facets
Name | Required | Description |
---|---|---|
footer | false | |
header | false | |
spacer | false | Gets the spacer facet, between each pair of newspaper columns. |
Attributes
Name | Type | Supports EL? | Description |
---|---|---|---|
align | String | Yes | HTML: Specifies the horizontal alignment of this element. Deprecated in HTML 4.01. |
bgcolor | String | Yes | HTML: The background color of this element. |
binding | String | Only EL | Identifies a backing bean property (of type UIComponent or appropriate subclass) to bind to this component instance. This value must be an EL expression. |
bodyStyle | String | Yes | Corresponds to the HTML style attribute for the table body tag |
bodyStyleClass | String | Yes | Corresponds to the HTML class attribute for the table body tag. |
border | int | Yes | HTML: Specifies the width of the border of this element, in pixels. Deprecated in HTML 4.01. |
cellpadding | String | Yes | HTML: Specifies the amount of empty space between the cell border and its contents. It can be either a pixel length or a percentage. |
cellspacing | String | Yes | HTML: Specifies the amount of space between the cells of the table. It can be either a pixel length or a percentage of available space. |
columnClasses | String | Yes | A comma separated list of CSS class names to apply to td elements in each column. |
datafld | String | Yes | Reserved for future use. |
dataformatas | String | Yes | Reserved for future use. |
datasrc | String | Yes | Reserved for future use. |
detailStampExpandedDefault | boolean | Yes | true|false - true if the detailStamp should be expanded by default. default: false |
detailStampLocation | String | Yes | before|after - where to render the detailStamp, before the actual row or after it. default: after |
dir | String | Yes | HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left). |
embedded | boolean | Yes | Avoids rendering the html table tags, thus, giving you a table rendering just rows. You can use this together with the detailStamp faces of the parent datatable to render child-tables using the same layout as the parent. Notice: You have to ensure both tables do have the same number of columns. Using the colspan attribute of the column tag might help alot. |
enabledOnUserRole | String | Yes | If user is in given role, this component will be rendered normally. If not, no hyperlink is rendered but all nested tags (=body) are rendered. |
first | int | Yes | The index of the first row to be displayed, where 0 is the first row. |
footerClass | String | Yes | The CSS class to be applied to footer cells. |
forceId | boolean | No | If true, this component will force the use of the specified id when rendering. |
forceIdIndex | boolean | No | If false, this component will not append a '[n]' suffix (where 'n' is the row index) to components that are contained within a "list." This value will be true by default and the value will be ignored if the value of forceId is false (or not specified.) |
forceIdIndexFormula | String | Yes | A formula that overrides the default row index in the construction of table's body components. Example : #{myRowVar.key} Warning, the EL should evaluate to a unique value for each row ! |
frame | String | Yes | HTML: Controls what part of the frame that surrounds a table is visible. Values include: void, above, below, hsides, lhs, rhs, vsides, box, and border. |
frequency | String | Yes | Defines in seconds the interval of reloads. if no value is specified 2 seconds will be default. |
headerClass | String | Yes | The CSS class to be applied to header cells. |
id | String | Yes | An identifier for this particular component instance within
a component view.
The id must be unique within the scope of the tag's enclosing NamingContainer (eg h:form or f:subview). The id is not necessarily unique across all components in the current view This value must be a static value, ie not change over the lifetime of a component. It cannot be defined via an EL expression; only a string is permitted. |
lang | String | Yes | HTML: The base language of this document. |
newspaperColumns | int | Yes | The number of columns to wrap the table over. Default: 1 Set the number of columns the table will be divided over. |
newspaperOrientation | String | Yes | The orientation of the newspaper columns in the newspaper table - "horizontal" or "vertical". Default: vertical |
onSuccess | String | Yes | Define javascript function to call after successful refresh. |
onclick | String | Yes | HTML: Script to be invoked when the element is clicked. |
ondblclick | String | Yes | HTML: Script to be invoked when the element is double-clicked. |
onkeydown | String | Yes | HTML: Script to be invoked when a key is pressed down over this element. |
onkeypress | String | Yes | HTML: Script to be invoked when a key is pressed over this element. |
onkeyup | String | Yes | HTML: Script to be invoked when a key is released over this element. |
onmousedown | String | Yes | HTML: Script to be invoked when the pointing device is pressed over this element. |
onmousemove | String | Yes | HTML: Script to be invoked when the pointing device is moved while it is in this element. |
onmouseout | String | Yes | HTML: Script to be invoked when the pointing device is moves out of this element. |
onmouseover | String | Yes | HTML: Script to be invoked when the pointing device is moved into this element. |
onmouseup | String | Yes | HTML: Script to be invoked when the pointing device is released over this element. |
preserveDataModel | boolean | Yes | Indicates whether the state of the whole DataModel should be saved and restored. When set to false, the value-binding for the "value" attribute of this table is executed each time the page is rendered. When set to true, that value-binding is only executed when the component is first created, and the DataModel state is thereafter saved/restored automatically by the component. When column sorting is used for a table this property needs to be false so that the DataModel can be updated to reflect any changes in the sort criteria. Default: false |
preserveRowStates | boolean | Yes | Indicates whether the state for each row should not be discarded before the datatable is rendered again. Setting this to true might be hepful if an input component inside the datatable has no valuebinding and the value entered in there should be displayed again. This will only work reliable if the datamodel of the datatable did not change either by sorting, removing or adding rows. Default: false |
preserveSort | boolean | Yes | Indicates whether the state of the sortColumn and sortAscending attribute should be saved and restored and written back to the model during the update model phase. Default: true |
previousRowDataVar | String | Yes | A parameter name, under which the previous RowData Object is set in request scope similar to the rowIndexVar and rowCountVar parameters. Mind that the value of this request scope attribute is null in the first row or when isRowAvailable returns false for the previous row. |
rendered | boolean | Yes | A boolean value that indicates whether this component should be rendered. Default value: true. |
renderedIfEmpty | boolean | Yes | Indicates whether this table should be rendered if the underlying DataModel is empty. You could as well use rendered="#{not empty bean.list}", but this one causes the getList method of your model bean beeing called up to five times per request, which is not optimal when the list is backed by a DB table. Using renderedIfEmpty="false" solves this problem, because the MyFaces extended HtmlDataTable automatically caches the DataModel and calles the model getter only once per request. Default: true |
rowClasses | String | Yes | A comma separated list of CSS class names to apply to td elements in each row. |
rowCountVar | String | Yes | A parameter name, under which the rowCount is set in request scope similar to the var parameter. |
rowGroupStyle | String | Yes | Corresponds to the HTML style attribute for grouped rows. |
rowGroupStyleClass | String | Yes | StyleClass for grouped rows. |
rowId | String | Yes | The id to use for |
rowIndexVar | String | Yes | A parameter name, under which the current rowIndex is set in request scope similar to the var parameter. |
rowOnClick | String | Yes | Defines a JavaScript onclick event handler for each table row |
rowOnDblClick | String | Yes | Defines a JavaScript ondblclick event handler for each table row |
rowOnKeyDown | String | Yes | Defines a JavaScript onkeydown event handler for each table row |
rowOnKeyPress | String | Yes | Defines a JavaScript onkeypress event handler for each table row |
rowOnKeyUp | String | Yes | Defines a JavaScript onkeyup event handler for each table row |
rowOnMouseDown | String | Yes | Defines a JavaScript onmpusedown event handler for each table row |
rowOnMouseMove | String | Yes | Defines a JavaScript onmousemove event handler for each table row |
rowOnMouseOut | String | Yes | Defines a JavaScript onmouseout event handler for each table row |
rowOnMouseOver | String | Yes | Defines a JavaScript onmouseover event handler for each table row |
rowOnMouseUp | String | Yes | Defines a JavaScript onmouseup event handler for each table row |
rowStyle | String | Yes | Corresponds to the HTML style attribute for the row tr tag. |
rowStyleClass | String | Yes | Corresponds to the HTML class attribute for the row tr tag. |
rows | int | Yes | The number of rows to be displayed. Specify zero for all remaining rows in the table. |
rules | String | Yes | HTML: Controls how rules are rendered between cells. Values include: none, groups, rows, cols, and all. |
sortAscending | boolean | Yes | Value reference to a model property that gives the current sort direction. The target Boolean property is set to true when the selected sortColumn should be sorted in ascending order, and false otherwise. The method which is bound to the "value" attribute of this table (ie which provides the DataModel used) is expected to use this property to determine how to sort the DataModel's contents. |
sortColumn | String | Yes | Value reference to a model property that gives the current sort column name. The target String property is set to the "columnName" of whichever column has been chosen to sort by, and the method which is bound to the "value" attribute of this table (ie which provides the DataModel used) is expected to use this property to determine how to sort the DataModel's contents. |
sortable | boolean | Yes | Define if the table is sortable or not |
sortedColumnVar | String | Yes | A parameter name, under which the a boolean is set in request scope similar to the var parameter. TRUE for the column that is currently sorted, FALSE otherwise. |
style | String | Yes | HTML: CSS styling instructions. |
styleClass | String | Yes | The CSS class for this element. Corresponds to the HTML 'class' attribute. |
summary | String | Yes | HTML: Provides a summary of the contents of the table, for accessibility purposes. |
title | String | Yes | HTML: An advisory title for this element. Often used by the user agent as a tooltip. |
value | Object | Yes | An EL expression that specifies the data model that backs this table. The value can be of any type. A value of type DataModel is used directly. Array-like parameters of type java.util.List, array of Object, java.sql.ResultSet, or javax.servlet.jsp.jstl.sql.Result are wrapped in a DataModel. Other values are wrapped in a DataModel as a single row. |
valueType | String | Yes | Indicate the expected type of the EL expression pointed by value property. It is useful when vb.getType() cannot found the type, like when a map value is resolved on the expression. |
var | String | No | Defines the name of the request-scope variable that will hold the current row during iteration. This value must be a static value. |
varDetailToggler | String | Yes | This variable has the boolean property "currentdetailExpanded" which is true if the current detail row is expanded and the action method "toggleDetail" which expand/collapse the current detail row. |
visibleOnUserRole | String | Yes | If user is in given role, this component will be rendered normally. If not, nothing is rendered and the body of this tag will be skipped. |
width | String | Yes | HTML: Specifies the desired width of the table, as a pixel length or a percentage of available space. |