Primefaces LazyDataModel сортировка

Я создаю таблицу данных, которая использует ленивую загрузку. Работает отлично, при попытке сортировки по данным: первая страница была отсортирована, нажатие на следующую сортировку не имеет никакого эффекта.

Метод сортировки:

public List<MyEntity> findListByCrieria(String filterField, String sortField, SortOrder sortOrder){
    Criteria crit = getSessionFactory().getCurrentSession().createCriteria(
            MyEntity.class);
    if (filterField != null ) {
        crit.add(Restrictions.eq("someField", filterField));
    }

    if(sortField != null && !sortField.isEmpty()){
        if(sortOrder.equals(SortOrder.DESCENDING)){
            crit.addOrder(Order.desc(sortField));
        } else {
            crit.addOrder(Order.asc(sortField));
        }
    }

    crit.setFirstResult(first);
    crit.setMaxResults(last);
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

    return crit.list();
}

0 ответов

Другие вопросы по тегам