Использование rich datascroller с Hibernate Pagination на сервере - PullRequest
0 голосов
/ 01 октября 2010

У меня есть rich: datatable с 500 (строкой) данными, и я использую rich: datascroller для разбивки на страницы, но проблема в том, что все данные выбираются в 1-й раз, поэтому, если у кого-то есть способ, который щелкает по странице 2, извлекает спящий режимстроки из таблицы (11-20).Я использую Spring + Hibernate.Пожалуйста, дайте решение подробно.

Ответы [ 2 ]

1 голос
/ 01 октября 2010

Вам понадобится пользовательская модель данных и пользовательский поставщик данных. Поставщик данных позаботится о получении ограниченных результатов, используя query.setMaxResults(..). Обратите внимание, что поскольку вы используете spring, было бы хорошо, если бы ваш экземпляр DataProvider управлялся пружиной.

Здесь - это некоторый код, который мы использовали для этой цели.

0 голосов
/ 06 июня 2013

Вы можете сделать свою собственную аналогию скроллера данных с одной задачей: визуализировать через ajax таблицу, которую U использует для отображения записей!

например,

<rich:dataTable id="dtId" rows="10" value="#{bean.records}" var="record">
       // content (records)
</rich:dataTable>

ваш собственный скроллер:

   <a4j:repeat value="#{bean.pages}" var="page">
     <a4j:commandLink value="#{page}" render="dtId" 
           actionListener="#{bean.myListener()}">
        <f:param name="selectedPageNumber" value="#{page}" />
     </a4j:commandLink>
     </a4j:repeat>

вы получите стол и что-то еще.например, после: 0 1 2 3 4 5 (# {bean.pages} - просто цифры - означает страницы) и, нажав на каждую ссылку (0123 ...), ваш слушатель (myListener) может извлечь новую часть данных из БД иобновите список # {bean. records }, и после повторного рендеринга у вас будет таблица с новыми данными!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...