Details
-
Type: Improvement
-
Status: Closed
-
Priority: Minor
-
Resolution: Fixed
-
Affects Version/s: 1.7.2 SP1
-
Component/s: ICE-Components
-
Labels:None
-
Environment:All
-
Affects:Sample App./Tutorial
-
Workaround Exists:Yes
-
Workaround Description:In your bean, instead of returning a List for your data model, return a javax.faces.model.DataModel. Then you can always add a property getter to access your DataModel's getRowIndex() method, thus accessing the panelSeries' current row index.
Description
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
The Facelets c:forEach varStatus docs:
Variable to bind an Object that describes the current indexed state. The Object has the following properties: first[boolean], last[boolean], begin[int], end[int], index[int], step[int].
Since PanelSeries is a UIData, it has "first", "rows", and "rowIndex", with no concept of stepping. One complication is that, while we theoretically can calculate what the last row will be, from the "first" and "rows" values, isRowAvailable() may return false in any intervening row, ending the iteration. So, accurate values for "end" and "last" is not something that can be guaranteed, without scanning ahead, which isn't really an option with the limitations of paged data models and UIData iteration overhead. Still, in typical cases, we could provide those.
Tested successfully on ICEfaces trunk revision 18315 for dataTable, columns, panelPositioned, panelSeries, panelTabSet