我在 liferay 6.2 上工作过 Application Display Templates,我使用 freemarker 帮助对 liferay 的动态数据列表进行分页。当我升级到 liferay 7 时,这是一个问题。Liferay 7 使用代码<#assign records = ddlDisplayTemplateHelper.getRecords(reserved_record_set_id)>
获取记录。
旧代码:
<#assign DDLRecordLocalService = serviceLocator.findService("com.liferay.portlet.dynamicdatalists.service.DDLRecordLocalService")> <#assign records = DDLRecordLocalService.getRecords(reserved_record_set_id)> <#assign totalRecord = DDLRecordLocalService.getRecordsCount(reserved_record_set_id, 0) >
它不起作用。
所以我尝试<#assign serviceLocator = staticUtil["com.liferay.portal.template.ServiceLocator"]>
但staticUtil
得到一个错误。
以下已评估为 null 或缺失: ==> staticUtil [in template "20115#20159#21387" at 第 9 行,第 27 列] 提示:如果已知失败的表达式合法地引用有时为 null 或缺失的内容
在 portal-ext.properties 我添加了:
freemarker.engine.restricted.classes=
freemarker.engine.restricted.packages=
freemarker.engine.restricted.variables=