liferay-asset renderer

Asset Renderer

为asset创建标题和摘要

 public String getSummary public String getTitle

如果要为asset提供唯一的URL,则可以指定URL标题。URL标题是用于直接访问asset的URL(例如localhost:8080 /-/ this-is-my-blog-asset)

 public String getUrlTitle()

如果asset受权限保护,则可以通过asset renderer设置asset的权限。

@Override
public long getUserId() {
    return _entry.getUserId();
}
 
@Override public String getUserName() {
    return _entry.getUserName(); }
 
public boolean hasDeletePermission(PermissionChecker
 permissionChecker) {
     return BlogsEntryPermission.contains(
        permissionChecker, _entry, ActionKeys.DELETE); }
 
@Override public boolean hasEditPermission(PermissionChecker
 permissionChecker) {
     return BlogsEntryPermission.contains(
        permissionChecker, _entry, ActionKeys.UPDATE); }
 
@Override public boolean hasViewPermission(PermissionChecker
 permissionChecker) {
     return BlogsEntryPermission.contains(
         permissionChecker, _entry, ActionKeys.VIEW); }

getURLView(…):生成一个URL,该URL在Asset Publisher中显示asset的全部内容。分配给可点击的asset name

@Override
public String getURLView(
        LiferayPortletResponse liferayPortletResponse,
        WindowState windowState)
    throws Exception {

    AssetRendererFactory<BlogsEntry> assetRendererFactory =
        getAssetRendererFactory();

    PortletURL portletURL = assetRendererFactory.getURLView(
        liferayPortletResponse, windowState);

    portletURL.setParameter("mvcRenderCommandName", "/blogs/view_entry");
    portletURL.setParameter("entryId", String.valueOf(_entry.getEntryId()));
    portletURL.setWindowState(windowState);

    return portletURL.toString();
}

将asset renderer组合在一起以满足JSP模板开发要求

1.将getJspPath(…)方法添加到asset renderer。此方法应将路径返回到JSP,该路径在Asset Publisher中呈现

@Override
public String getJspPath(HttpServletRequest request, String template) {
    if (template.equals(TEMPLATE_ABSTRACT) ||
        template.equals(TEMPLATE_FULL_CONTENT)) {
         return "/blogs/asset/" + template + ".jsp";
     }
     else {
         return null;
     } }

2.重写include,包括该JSP

@Override
public boolean include(
        HttpServletRequest request, HttpServletResponse response,
        String template)
    throws Exception {
    request.setAttribute(WebKeys.BLOGS_ENTRY, _entry);
    return super.include(request, response, template);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值