第三节 Liferay Portal内容和布局
Portlet容器采用布局来对包含的Portlet进行管理并呈现,不同的布局决定了不同的Portlet呈现效果。每个加入到Portal服务器的Portlet必须属于某个布局,才能够被使用者所看到。内容则是Portlet对外呈现的信息片断,是Portlet的核心。两者都是Portal的重要组成部分。Liferay Portal采用开源框架Struts的Tiles来管理内容和布局。
2.3.1 什么是布局
布局,即Layout,也可以称为布局管理器,是Portlet容器管理Portlet的一个重要工具。一个布局,在生成的Portal页面中,呈现出单行多列或者多行多列的效果。而Portlet就内嵌在某一列中。
在Liferay Portal中,将列分为宽栏和窄栏。通常,宽栏占据页面2/3的宽度,窄栏占据页面1/3的宽度。每个Portlet在部署的时候都必须在部署描述符文件中指定Portlet是被部署在宽栏或者窄栏当中,默认是部署在宽栏中。

Liferay Portal采用tpl文件来定义布局,这些tpl文件存储在{PORTAL_HOME} /liferay/html/layouttpl文件夹中。在tpl文件中,规定每个列的宽度。当Portlet加入到列中时,取得当前列的宽度,然后根据这个宽度确定Portlet窗口的显示宽度。tpl文件采用标准的HTML代码和Liferay Portal自定义的标签来定义布局。如下图:

只要把定义的tpl文件路径加入到部署描述文件中,Liferay Portal在启动的时候就可以自动载入,供系统调用。如下图:

Liferay Portal默认的布局允许有一列、二列、三列的布局。二次开发的时候可以定义自己的布局文件。
在每个列的底部,有一个下拉列表框,列出本列可用的所有Portlet。列表框旁边的“添加”按钮,则可以将选中的按钮添加到列中显示。

2.3.2 什么是内容
内容具体指Portlet显示出来的标记片断,称为Portlet内容。通常,当Portlet窗口处于浏览或者编辑状态的时候,就会表现相应的Portlet内容。内容在开发Portlet的时候确定。
Portlet对各种来源的数据进行加工和逻辑处理,最后输出为一些规则的标记(HTML、XHTML、WML),最后在Portlet容器中形成Portlet窗口,供Portal组合成为Portal页面。
内容是Portlet的信息主体,它形成的表单、链接等同时接受使用者的信息请求或者数据提交,并将系统对使用者请求的响应呈现在客户端。下图为以日历为内容的Portlet。

2.3.3 内容布局与Portlet的关系
通过定义布局,对Portlet进行有效管理,是Liferay Portal容器组织Portlet的有效方式。在相同的列中,Portlet可以很容易的调整位置。当列中的Portlet数量超过一个的时候,通过Portlet右上角的“上移”和“下移”按钮,可以调整相邻Portlet的上下位置。当Portlet的内容较长的时候,可以把Portlet部署到宽栏中,占据更大的屏幕空间,以有效的显示数据。相应的,如果Portlet内容较少时,可以把Portlet部署到窄栏中。

每个Portlet在定义的时候,可以在部署描述文件中定义Portlet所属的类(Category),每个类可用的布局,这些定义也可以启动Portal之后在“内容与布局”选项卡中修改。
在“修改布局”子选项卡中可以修改的包括桌面的标识,如果是单行两列的布局,还可以调整宽栏和窄栏的位置。如下图:利用Liferay Portal提供的工具,可以很方便的修改布局内容和它被显示在Portal页面的什么地方。


在“处理孩子”子选项卡中,可以定义每个Portal页面的子页面,形成页面树。根节点的子页面会平行的出现在桌面上。如下图:

Portal是大量信息和系统的集成。Portlet内容往往来源与集成的各个系统。Portlet面向的用户通常也是复杂的。除了在用户策略中合理定义Portlet的用户策略外,也可以对Portlet内容进行过滤,针对相应的用户显示适当的信息。当然,这种方法没有定义用户策略那样来得直观。
2.3.4 选择内容和布局
Liferay Portal内置了数个Portlet应用,包括系统管理、日历、书签等等。目前,Liferay Portal支持单行单列、单行两列、单行三列的布局显示,可以在相应桌面的“内容和布局”中选择。
每个默认的Portlet则来自于各个数据源的既有数据,或者对该数据的重新加工处理。通过定义Portlet所属类别和相应的用户策略,成功实现Portlet的合理显示。
Liferay Portal提供了基于Web的工具,可以很方便的在几种默认的布局之间切换。
①、登录系统后,选择桌面当中的“内容和布局”,进入布局管理页面。
②、选中桌面的第一级节点,然后在“列数”中选择需要的列数。
③、点击底部的“更新页”按钮,提交选择。布局修改生效。返回桌面。
可以看到,单行单列的布局默认是一个宽栏;单行两列的布局默认是一个宽栏和一个窄栏;单行三列的布局默认是三个窄栏。
分享到:
相关推荐
### Liferay Portal的内容和布局详解 #### 一、布局(Layout) **布局**是Liferay Portal中用于管理Portlet的关键概念之一。布局不仅决定着Portlet的呈现方式,还影响着用户的交互体验。在Liferay中,布局是通过一...
Liferay Portal的核心特性包括用户身份管理、内容管理、协作工具、工作流程和集成能力。它支持多语言,提供自定义主题和布局,能够适应各种企业的业务需求。通过Liferay,企业可以构建统一的入口点,将不同的应用...
- **内容管理**:Liferay Portal提供了一套完善的内容管理系统,支持多种媒体格式,便于创建、编辑和发布各类信息。 - **社区工具**:内置博客、论坛、投票等功能,有助于建立活跃的在线社区。 - **门户框架**:...
3. **Liferay Portal 配置** Liferay Portal的配置涉及到多个层次,包括服务器级别的配置、portlet部署配置以及应用级别的设置。学习如何配置Liferay的部署文件(如portal-ext.properties)以定制门户的行为和功能...
在Liferay Portal中,Portlet是展示内容的基本单元,它可以通过MVC模式来实现业务逻辑、数据处理和视图呈现的分离。MVC架构允许开发者将程序分为三个主要部分:模型(Model)负责数据处理和业务逻辑,视图(View)...
8. **安全性和权限**:了解Liferay的安全模型,包括角色、组、权限和控制台设置,以确保内容和功能的安全访问。 9. **性能优化**:学习如何通过缓存策略、减少HTTP请求、优化数据库查询等方式提高Liferay门户的性能...
3. 将portal-shared.jar和portlet.jar从Common/lib/ext移动到Liferay应用的WEB-INF/lib目录,这是为了确保Portlet的正确运行。 4. 创建Tomcat的conf/Catalina/localhost目录,并将Root.xml文件复制至此处,以配置web...
作者曾经在2008年至2010年间出版了四本关于Liferay的书籍,并且他也是Liferay与其他技术集成的专家,比如与广告服务器OpenX、不同搜索引擎、企业内容(包括视频、音频、图片、文档、记录和网页内容)、社交媒体以及...
总的来说,Liferay Portal的JSP开发涉及到多个环节,从创建项目到编写和配置JSP页面,再到注册Portlet,每个步骤都是实现功能的关键。理解这些基本概念和流程,对于高效地开发和维护Liferay Portlet至关重要。在实际...
Liferay Portal 6拥有强大的内容管理系统,允许用户轻松创建、编辑和发布各种类型的内容,包括文章、文档、多媒体等。其内置的富文本编辑器和版本控制功能确保了内容的质量和一致性。 ##### 2. 社交媒体集成 平台...
Liferay Portal 的内容和布局包括布局、内容和portlet 之间的关系。布局决定了 portal 的外观和布局。内容是 portal 的核心组成部分,包括文本、图片和视频等。portlet 是一个小型的 web 应用程序,提供了特定的功能...
portal-shared.jar和portlet.jar这两个Liferay特有的jar包应移动到portlet应用的WEB-INF/lib目录。最后,需要在Tomcat的conf/Catalina/localhost目录下创建Root.xml文件,配置web上下文信息和数据源。 这种部署过程...
Liferay Portal 是世界领先的开源企业门户解决方案,使用最新的 Java 和 Web 2.0 技术。可以运行在所有主流应用服务器和 servlet 容器、数据库和操作系统中,拥有超过 700 个部署组合。 一、Liferay Portal 概述 ...
##### 2.3 内容和布局 Liferay的布局系统允许用户自定义页面的结构和外观,通过拖放Portlet到不同的区域来构建个性化的工作空间。同时,内容管理功能支持各种类型的数据,如文本、图片、视频等,满足不同场景的需求...
Liferay Portal是一款开源的企业级应用平台,它集成了内容管理、工作流、社区工具等多种功能,为组织提供了一个灵活、可扩展的平台来构建定制化的门户和内网解决方案。 在书中,作者Jonas X. Yuan博士深入探讨了...
3. **门户设计**:掌握如何使用Liferay的布局、主题和portlet来定制用户界面,以满足企业品牌形象和用户需求。 4. **内容管理**:学习如何创建、编辑和发布内容,以及使用Liferay的文档库和资产管理功能。 5. **...
它提供了强大的身份管理和权限控制,使得不同角色的用户可以访问不同的内容和服务。此外,Liferay支持多种内容管理,如文档库、博客、论坛等,便于企业构建内部协作平台。它还具备高度可扩展性,可以通过插件和模块...
3. Theme开发:主题用于改变Liferay的外观和布局。开发者可以基于预设的主题模板创建新的主题,通过CSS和HTML调整样式和结构。 4. Layout Template开发:布局模板控制页面的布局结构,如列数、portlet位置等。开发者...
通过Liferay IDE,开发者可以方便地创建portlet、主题、布局等,并且Eclipse的强大的调试工具将帮助你定位和解决问题。 总的来说,Liferay Portal 6.1.1的源码部署需要对Eclipse、Java、Ant和数据库有一定的了解。...