public void encodeChildren(FacesContext facesContext, UIComponent uiComponent) throws IOException { validateParameters(facesContext, uiComponent, null); DOMContext domContext = DOMContext.attachDOMContext(facesContext, uiComponent); Element root = (Element) domContext.getRootNode(); DOMContext.removeChildren(root); PanelSeries list = (PanelSeries) uiComponent; UISeries uiList = (UISeries) uiComponent; int rowIndex = uiList.getFirst(); uiList.setRowIndex(rowIndex); int numberOfRowsToDisplay = uiList.getRows(); int countOfRowsDisplayed = 0; while (uiList.isRowAvailable()) { if ((numberOfRowsToDisplay > 0) && (countOfRowsDisplayed >= numberOfRowsToDisplay)) { break; } Iterator childs; childs = list.getChildren().iterator(); while (childs.hasNext()) { UIComponent nextChild = (UIComponent) childs.next(); if (nextChild.isRendered()) { domContext.setCursorParent(root); domContext.streamWrite(facesContext, uiComponent, domContext.getRootNode(), root); encodeParentAndChildren(facesContext, nextChild); } } rowIndex++; countOfRowsDisplayed++; uiList.setRowIndex(rowIndex); } uiList.setRowIndex(-1); }