liferay 如何在页面实现添加多个portlet
在默认的情况下,一个portlet在一个页面上只能有一个,如果需要一个页面上有多个相同的portlet的话就需要对portlet进行实例化。实例化以后,Liferay会为每一个实例化的portlet分配一个 instance id用来区分相同功能的portlet。一个页面里的多个相同的portlet的instance id 不同,同样不同页面的相同的portlet的instance id也不相同。这样就可以开发功能相同,内容不同的实现。
具体配置如下:
添加instanceable属性配置;默认情况下instanceable为false,属性顺序参照liferay-portlet-app_4_4_0.dtd文件。
liferay-portlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE liferay-portlet-app PUBLIC "-//Liferay//DTD Portlet Application 4.4.0//EN" "http://www.liferay.com/dtd/liferay-portlet-app_4_4_0.dtd"> <liferay-portlet-app> <portlet> <portlet-name>LinkManager</portlet-name> <icon>/img/icon.png</icon> <struts-path>library</struts-path> <restore-current-view>false</restore-current-view> <instanceable>true</instanceable> <css-class-wrapper>portlet-library</css-class-wrapper> </portlet> <role-mapper> <role-name>user</role-name> <role-link>User</role-link> </role-mapper>
</liferay-portlet-app>
每一个属性都是在com.liferay.portal.model.impl.PortletImpl中对应。
配置完成以后在代码中通过:
ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest.getAttribute(WebKeys.THEME_DISPLAY); PortletDisplay portletDisplay = themeDisplay.getPortletDisplay(); Portlet portlet = PortletLocalServiceUtil.getPortletById(themeDisplay.getCompanyId(), portletDisplay.getId()); String instanceId = portlet.getInstanceId();
获得instance id。默认情况下,没有实例化的portlet取出来的instance id 为null。
liferay 如何在页面实现添加多个portlet相关推荐
- framer x使用教程_如何使用Framer Motion将交互式动画和页面过渡添加到Next.js Web应用程序
framer x使用教程 The web is vast and it's full of static websites and apps. But just because those apps ...
- 一种无需留坑为页面动态添加View方案
在Activity或Fragment页面动态添加View,有其应用场景,比如配合运营在首页动态插入H5活动页(如下图手淘的雪花例示[1]),在页面头部插入通知View等.本文结合ActivityLif ...
- python使用fpdf2包和pdfrw包在已有的PDF页面上添加新的页
python使用fpdf2包和pdfrw包在已有的PDF页面上添加新的页 目录 python使用fpdf2包和pdfrw包在已有的PDF页面上添加新的页 #包安装 #新内容添加到已有的PDF页面上 # ...
- html右键禁用和web页面中添加加入qq群的方式
需求: html禁用右键,防止定位csspath和xpath,同时需要在web页面中加入添加加入qq群的图标 实现: html禁用右键:利用oncontextmenu <!doctype htm ...
- OAF在打开的新页面中添加按钮,功能是关闭当前页面
OAF在打开的新页面中添加按钮,功能是关闭当前页面 javascript:close()
- 关于页面动态添加控件(转)
最近看到很多问题都是关于页面动态添加控件,页面postback以后,就取不到这些控件了.其实每次在页面上动态添加控件(或者在数据控件上动态添加列),它们的状态是不会被添加到页面的ViewState中去 ...
- asp登录页面跳转到注册页面_Java 添加页面跳转按钮到PDF文档
概述 当我们在查阅含有大量页面的PDF时,可通过在页面上添加跳转按钮来实现页面转换,以达到节约时间,提高效率的目的.本文将通过Java程序来演示如何给PDF文档添加页面跳转按钮.通常来说跳转可分为两种 ...
- Sharepoint页面里添加.net托管代码
Sharepoint页面里添加.net托管代码 在做Sharepoint门户网站定制时候,可以利用VS集成开发工具编写自定义功能的WebPart或利用VS在可视化环境下开发UserControl然后利 ...
- html页面怎么添加打印,在网页中添加打印按钮或链接的方法
在网页中添加打印按钮或链接的方法 发布时间:2020-05-27 17:38:35 来源:亿速云 阅读:347 作者:鸽子 打印按钮或链接是对网页的简单添加 CSS(层叠样式表)使你可以控制屏幕上的网 ...
最新文章
- mysql里条件语句和循环语句_MySQL与Oracle 差异比较之四条件循环语句
- Linux软件安装管理 - CentOS (二) ---- yum在线安装
- 面试题16: 数值的整数次方
- SAP移动类型103解析
- python基础教程:统计计数的4种常用的方法
- Java 运行时数据区域
- 亚特兰大峰会精彩看点:软件吞噬世界,OpenStack是变革核心
- C 语言,你真的懂递归了吗?
- matlab中Cci,【指标量化】超买超卖——CCI 顺势指标
- 帮助你免于失业的十大软件技术
- UML(Unified Modeling Language) 统一建模语言
- 微信小程序“淘淘猜成语”开发教程(该成语接龙已上线,功能齐全)
- Qt Designer的简单使用
- walking机器人仿真教程-激光导航-TEB算法导航
- 苹果开发者账号申请流程
- php get defined,php中get_defined_constants函数用法实例分析
- Android jPBC 2.0.0配置与测试
- 快速搭建一个小型博客网站
- 【自动驾驶】Frenet坐标系与Cartesian坐标系(二)
- 2021上海高考成绩几点查询,2021年上海高考分数公布时间几点,具体时间什么时候可以查询...
热门文章
- 汇编语言 计算ffff:0006单元中的数乘以3,结果存在dx中
- JDK14性能管理工具:jmap和jhat使用介绍
- java text 格式化_java.text.DecimalFormat类十进制格式化
- 如何解决微服务架构中的雪崩问题?
- Spring事务回滚和异常类
- kotlin学习之基础(一)
- Linux网络编程 之 TCP编程(七)
- (~最新合集~)计算机网络谢希仁第七版 第二章课后答案
- 算法竞赛入门经典(第二版) | 例题4-4 信息解码 (紫皮书牛啤!)(UVa213,Message Decoding)
- Python程序开发——第九章 异常处理