You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Mohammed Abrach <ma...@aakus.de> on 2007/08/01 17:03:47 UTC

Problem using dataScoller in Combination with dataModel

ich habe eine Liste, die 30 Objekten enthällt. ich darstelle sie mit 
hilfe von <t:dataTable> und lässe 10 Objekte pro Seite anzeigen und mit 
hilfe von <t:datascroller> kann ich durch die Seiten navigieren. das 
läuft reibungslos. meine List ist vom Typ Arraylist.

I've got a List with 30 Objects that is displayed with <t:dataTable> and 
use <t:datascroller> to display just 10 and navigate through the sites. 
Everything works fine while the List is of type Arraylist.
If i use dataModel instead of Arraylist just the first Page is displayed 
correctly, next pages are just blank. although datascroller says that 
there are more than 10 Objects.
Can anyone help ?



<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
<html>
<%@include file="include/head.inc"%>
<body>
<f:view>
    <t:panelLayout id="page" layout="classic" styleClass="pageLayout"
        headerClass="pageHeader" navigationClass="pageNavigation"
        bodyClass="pageBody" footerClass="pageFooter" style="width: 100%;">
        <f:facet name="header">
            <f:subview id="header">
                <jsp:include page="include/page_header.jsp" />
            </f:subview>
        </f:facet>
        <f:facet name="navigation">
            <f:subview id="menu">
                <jsp:include page="include/navigation.jsp" />
            </f:subview>
        </f:facet>
        <f:facet name="body">
            <h:form>
                <t:dataTable id="data" styleClass="scrollerTable"
                    headerClass="standardTable_Header"
                    footerClass="standardTable_Header"
                    rowClasses="standardTable_Row1,standardTable_Row2"
                    
columnClasses="standardTable_Column,standardTable_ColumnCentered,standardTable_Column"
                    var="car" value="#{pagedSort.cars}" 
preserveDataModel="true"
                    rows="10" sortColumn="#{pagedSort.sort}"
                    sortAscending="#{pagedSort.ascending}" 
preserveSort="true">
                    <h:column>
                        <f:facet name="header"></f:facet>
                        <h:outputText value="#{car.id}" />
                    </h:column>
                    <h:column>
                        <f:facet name="header">
                            <t:commandSortHeader columnName="type" 
arrow="true"
                                immediate="false">
                                <h:outputText value="Type" />
                            </t:commandSortHeader>
                        </f:facet>
                        <h:outputText value="#{car.type}" />
                    </h:column>
                    <h:column>
                        <f:facet name="header">
                            <t:commandSortHeader columnName="color" 
arrow="true"
                                immediate="false">
                                <h:outputText value="color" />
                            </t:commandSortHeader>
                        </f:facet>
                        <h:outputText value="#{car.color}"></h:outputText>
                           
                    </h:column>
                </t:dataTable>
                <t:dataScroller id="scroll_1" for="data" fastStep="10" 
binding="#{pagedSort.scroll}"
                    pageCountVar="pageCount" pageIndexVar="pageIndex"
                    styleClass="scroller" paginator="true" 
paginatorMaxPages="9"
                    paginatorTableClass="paginator"
                    paginatorActiveColumnStyle="font-weight:bold;">

                    <f:facet name="first">
                        <t:graphicImage url="images/arrow-first.gif" 
border="1" />
                    </f:facet>
                    <f:facet name="last">
                        <t:graphicImage url="images/arrow-last.gif" 
border="1" />
                    </f:facet>
                    <f:facet name="previous">
                        <t:graphicImage url="images/arrow-previous.gif" 
border="1" />
                    </f:facet>
                    <f:facet name="next">
                        <t:graphicImage url="images/arrow-next.gif" 
border="1" />
                    </f:facet>
                    <f:facet name="fastforward">
                        <t:graphicImage url="images/arrow-ff.gif" 
border="1" />
                    </f:facet>
                    <f:facet name="fastrewind">
                        <t:graphicImage url="images/arrow-fr.gif" 
border="1" />
                    </f:facet>
                </t:dataScroller>
                <t:dataScroller id="scroll_2" for="data" 
rowsCountVar="rowsCount" firstRowIndexVar="firstRowIndex" 
lastRowIndexVar="lastRowIndex"
                    pageCountVar="pageCount" pageIndexVar="pageIndex">
                    <h:outputFormat
                        value="Anzahl Treffer: {0} 
&nbsp;&nbsp;/&nbsp;&nbsp; Anzeige {1} bis {2} &nbsp;&nbsp;/&nbsp;&nbsp; 
Seite {3} von {4}"
                        styleClass="standard" escape="false">
                        <f:param value="#{rowsCount}" />
                        <f:param value="#{firstRowIndex}" />
                        <f:param value="#{lastRowIndex}" />
                        <f:param value="#{pageIndex}" />
                        <f:param value="#{pageCount}" />
                    </h:outputFormat>
                </t:dataScroller>

            </h:form>
        </f:facet>
        <%@include file="include/page_footer.jsp"%>
    </t:panelLayout>
</f:view>
</body>
</html>