【发布时间】:2015-07-11 03:05:28
【问题描述】:
我正在开发一个带有电子邮件通知的自定义 kaleo 工作流程。对于通知,我使用的是 Velocity,我想从 Liferay 服务中获取一些信息。这是一个给我带来问题的小代码示例:
#set ($resourceUtil = $serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleResourceLocalService"))
$resourceUtil
#set ($resourcePK = $getterUtil.getInteger($entryClassPK))
$resourcePK
#set ($resource = $resourceUtil.getJournalArticleResource($resourcePK))
$resource
如果我使用前面的代码,我得到的通知如下:
com.liferay.portlet.journal.service.impl.JournalArticleResourceLocalServiceImpl@3baa7cf0
6563724
$resource
如您所见,我得到了正确的 JournalArticleResourceLocalService,我得到了正确的资源 PK 值,但是当我调用操作获取资源时,总是得到一个 null。
这是一个包含资源的示例,但我尝试了其他一些终身服务,但始终没有得到响应。这让我想到,也许我必须启用某些属性或做一些不同的事情才能调用服务操作?
任何 hiny 将不胜感激。我正在使用 Liferay 6.2。 Liferay 6.0 中的相同代码运行良好...
【问题讨论】:
-
正确的方法签名是#set ($resource = $resourceUtil.getArticleResource($resourcePK))