Я экспериментирую с динамическими списками данных в Liferay 6.1. Определения данных и редакторы списков работают нормально, но у меня возникли проблемы с подготовкой шаблона для отображения списка. В частности, мне интересно, как реализовать сортировку и разбиение на страницы отображения, так как список со временем становится очень длинным.
Начнем с заказа. Теоретически приведенный ниже шаблон должен использовать метод getRecords, который допускает использование OrderByComparator ( http://bit.ly/MqsGNE ) , а где фабрика, которая позволила бы мне создать нужный компаратор?
#set ($ddlRecordsUtil = $serviceLocator.findService("com.liferay.portlet.dynamicdatalists.service.DDLRecordLocalService"))
#set ($recordSetId = $getterUtil.getLong($reserved_record_set_id.data))
## How to create an OrderByComparator which would ORDER_BY_text2132_DESC ??
#set ($orderBy = ???????????)
#set ($records = ${ddlRecordsUtil.getRecords($recordSetId,-1,-1,50, $orderBy)})
<ul>
#foreach ($record in $records)
#set ($name = $record.getField("text2132").getValue())
<li><em>${name}</em></li>
#end
</ul>
Я что-то упустил, есть ли другой подход к сортировке этих списков до того, как они будут извлечены из базы данных?