You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Igor Vaynberg (JIRA)" <ji...@apache.org> on 2010/09/10 06:47:49 UTC

[jira] Updated: (WICKET-2532) Pageable Views call IDataProvider.size() more than once

     [ https://issues.apache.org/jira/browse/WICKET-2532?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Igor Vaynberg updated WICKET-2532:
----------------------------------

    Fix Version/s: 1.5-M3
                       (was: 1.5-M2)

> Pageable Views call IDataProvider.size() more than once
> -------------------------------------------------------
>
>                 Key: WICKET-2532
>                 URL: https://issues.apache.org/jira/browse/WICKET-2532
>             Project: Wicket
>          Issue Type: Improvement
>          Components: wicket
>    Affects Versions: 1.4.1
>         Environment: All
>            Reporter: bernard
>             Fix For: 1.5-M3
>
>         Attachments: ContactDataProviderTest.java, PagingPage.java
>
>
> IDataProvider.size() is typically an expensive database operation. It is called twice in typical Pageable View scenarios although Wicket makes attempts to avoid that. In addition, the first call is premature from the application perspective because it is made while the the requested page position is not yet known.
> How to reproduce:
> Drop in the attached files into the Wicket examples application and run:
> repeaters|Paging DataView Example - builds on previous to demonstrate paging and page navigation
> Otherwise I am running against a wall with IDataProvider.size() and AbstractPageableVew because I can't find any way to get the page position at the same time when IDataProvider.size() is called. Support of paging of results of unknows size is impossible without this information. Please refer to Google search results paging - that is the kind of paging we need.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.