我的自定义资源在Asset Publisher
中不可见。我根据this指南创建了portlet和服务层。所以我有Location
模型。创建或更新location
后,我更新了条目:
public void addLocation(ActionRequest request, ActionResponse response)
throws Exception {
Location location = _updateLocation(request);
User user = PortalUtil.getUser(request);
AssetEntryLocalServiceUtil.updateEntry(user.getUserId(),
PortalUtil.getScopeGroupId(request), Location.class.getName(),
location.getLocationId(), new long[0], new String[] { "mycat1",
"mucat2" });
sendRedirect(request, response);
}
AssetEntry存储在数据库中:
SELECT entryid, groupid, companyid, userid, username, createdate, modifieddate,
classnameid, classpk, classuuid, classtypeid, visible, startdate,
enddate, publishdate, expirationdate, mimetype, title, description,
summary, url, layoutuuid, height, width, priority, viewcount
FROM assetentry order by createdate desc limit 1;
结果:
结果的左侧 结果的右侧
如果数据库中存在资产,为什么Asset Publisher不显示我的资产? 也许我应该指定一些布局,因为Asset Publisher不知道如何显示我的资产。
答案 0 :(得分:1)
要正确使用资产框架,您需要做更多的事情。首先,Asset Publisher需要知道如何访问对象元数据 - 您必须提供自定义AssetRendererFactory
/ AssetRenderer
类和一个将呈现您的实体的JSP文件。
在{strong>使用Asset Publisher发布资产部分的https://www.liferay.com/documentation/liferay-portal/6.2/development/-/ai/asset-framework-liferay-portal-6-2-dev-guide-06-en下阅读更多内容。