You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Hailong Zhang <to...@gmail.com> on 2006/05/30 18:20:54 UTC

problems

I use <t:dataScroller>(MyFaces 1.1.3, tomahawk-1.1.2) like this:
<h:form id="videoListForm">
                    <t:dataTable id="videos" value="#{
VideoListBean.videoList}" var="video" rows="1">
                        <h:column>
                            <f:facet name="header">
                                <h:outputText value="name"></h:outputText>
                            </f:facet>
                            <h:outputLink value="#{bundle.videoManagementUrl
}">
                                <h:outputText value="#{video.chineseName
}"></h:outputText>
                                <f:param name="videoId" value="#{video.id}"
/>
                            </h:outputLink>
                        </h:column>
                    </t:dataTable>
                    <h:panelGrid columns="1">
                        <t:dataScroller id="scroll_1" for="videos"
fastStep="1" pageCountVar="pageCount" pageIndexVar="pageIndex"
paginator="true" paginatorMaxPages="9"
paginatorActiveColumnStyle="font-weight:bold;" immediate="true"
                            actionListener="#{VideoListBean.scrollerAction
}">
                            <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="videos"
rowsCountVar="rowsCount" displayedRowsCountVar="displayedRowsCountVar"
firstRowIndexVar="firstRowIndex" lastRowIndexVar="lastRowIndex"
pageCountVar="pageCount" immediate="true" pageIndexVar="pageIndex">
                            <h:outputFormat value="#{
bundle.videoScrollerPages}">
                                <f:param value="#{rowsCount}" />
                                <f:param value="#{displayedRowsCountVar}" />
                                <f:param value="#{firstRowIndex}" />
                                <f:param value="#{lastRowIndex}" />
                                <f:param value="#{pageIndex}" />
                                <f:param value="#{pageCount}" />
                            </h:outputFormat>
                        </t:dataScroller>
                    </h:panelGrid>
                </h:form>

But when I click "2", "next" or "fastforward", an error is reported:
java.lang.IllegalArgumentException: Illegal value for first row: -1
    at javax.faces.component.UIData.setFirst(UIData.java:991)
    at org.apache.myfaces.component.html.ext.HtmlDataTable.setFirst(
HtmlDataTable.java:471)
    at org.apache.myfaces.custom.datascroller.HtmlDataScroller.broadcast(
HtmlDataScroller.java:148)
    at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java
:94)
    at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:136)
    at org.apache.myfaces.lifecycle.LifecycleImpl.applyRequestValues(
LifecycleImpl.java:219)
    at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java
:71)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
    at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
ExtensionsFilter.java:144)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
    at
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal
(OpenSessionInViewFilter.java:174)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(
OncePerRequestFilter.java:76)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
    at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:178)
    at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:126)
    at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:105)
    at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:107)
    at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:148)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:868)
    at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
(Http11BaseProtocol.java:663)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
PoolTcpEndpoint.java:527)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
LeaderFollowerWorkerThread.java:80)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
ThreadPool.java:684)
    at java.lang.Thread.run(Thread.java:595)

What wrong?