У меня есть комбинация критериев поиска, которые реализуются с использованием критериев спящего режима. И я добавил разбивку на страницы следующим образом:
criteria.setFirstResult(offset).setMaxResults(pageSize).setFetchSize(pageSize).list();
Этого недостаточно для разбивки на страницы, поэтому я подсчитал общий размер результата.
totalResult = (Integer)criteria.setProjection(Projections.rowCount()).uniqueResult();
Проблема в том, что в первый раз, когда я отправляю форму поиска, у меня есть правильный итог. Когда я нажимаю следующую страницу и меняет смещение, я получил второй экземпляр NullPointExcetion. Я не знаю почему. И через отладку я вижу, когда возникает это исключение, первый оператор успешно возвращает разбитые на страницы результаты.
Итак, я хочу спросить, второй конфликт противоречит второму? (потому что первый оператор устанавливает fetchsize в 10, и мне интересно, будет ли функция count (*) работать правильно. они разные задачи, используя те же критерии, как я могу клонировать или копировать один критерий, который уже имеет многочисленные ограничения?)