Я работаю над проектом dotCMS, в котором мы пишем HTML, Javascript и Velocity, но не Java (в этом пока не было необходимости).
В dotCMS мне нужно пройти два отношения, чтобы составить список всех элементов структуры C, связанных с экземпляром структуры A, где структура A относится к структуре C, которая относится к структуре D. Хорошо, я сделал это и у меня есть список контента, который я могу просмотреть: http://pastebin.com/52uStcUA .
Проблема в том, что мне нужно разбить этот список на страницы, а макрос #pageContent () только принимает запрос, а не список. Я изучил источник макроса #pageContent () в dotCMS_library.vm и обнаружил, что он вызывает Java: ContentsWebAPI.pageContent (), который, в свою очередь, принимает только запрос.
Насколько я могу судить, это оставляет меня с двумя вариантами:
1) Каким-нибудь образом сформулируйте запрос для макроса #pageContent (), который выражает обход транзитивной связи. Я знаю, как написать запрос для одного отношения ( http://pastebin.com/cwLY0Av4 ), но не для двух.
2) Напишите свою собственную Java-реализацию ContentsWebAPI.pageContent (), которая откровенно звучит как излишество (и, возможно, только первый шаг на долгом и мучительном пути).
Итак, любые другие идеи о том, как это решить?