我正在尝试获取ADT中某个条目的注释。
我尝试了这个:
<#assign MBMessageLocalServiceUtil = serviceLocator.findService("com.liferay.message.boards.kernel.service.MBMessageLocalServiceUtil")>
<@getCommentCount resourcePrimKey=article.getResourcePrimKey()/>
<#macro getCommentsCount resourcePrimKey>
<#assign Messages = MBMessageLocalServiceUtil.getMessages("com.liferay.portlet.journal.model.JournalArticle", resourcePrimKey, 0) />
<#assign MessagesCount = Messages?size-1 />
<#if MessagesCount != 0>
(Comments: ${MessagesCount} )
</#if>
</#macro>
然后抛出此错误:
The following has evaluated to null or missing:
==> serviceLocator.findService("com.liferay.message.boards.kernel.service.MBMessageLocalServiceUtil") [in template "20116#20160#38923" at line 35, column 54]
我真的不知道我在做什么错。
我已经在此门户网站上使用过serviceLocator,并且可以使用。 Freemarker受限制的变量和类被删除。
有谁有解决的想法?
最佳答案
您可以使用liferay jsonws api中的/comment.commentmanagerjsonws/get-comments操作来访问条目注释。可以通过Javascript / curl / URL访问此api,它应该可以解决问题。