没有合适的资源?快使用搜索试试~ 我知道了~
首页Liferay 6.0.5开发指南.doc
Liferay 6.0.5开发指南.doc
需积分: 6 72 浏览量
更新于2023-03-03
评论 2
收藏 3.38MB DOCX 举报
最新的liferay资料。Portal是基于Web的,以“应用整合”和“消除信息孤岛”为最终目的,提供单点登录、内容聚合、个性化门户定制等功能的综合信息系统。
资源详情
资源评论
资源推荐

Liferay 6.0.5 开发指南
1. Portal/Portlet 的基本概念
中定义了 的实现规范和接口,并对理想的 进行了详细的规划
和描述。它的特点在于生产者将消费者所需要的信息通过 返回给消费者,这些信息
是相对标记片断,例如 、 等,可以直接嵌入用户的页面中,而不用像
一样开发用户端接口。实现这个规范, 可以跟各式各样的数据源打交道,
彻底终结信息孤岛的窘境。
1.1. 什么是 Portal
是基于 的,以“应用整合”和“消除信息孤岛”为最终目的,提供单点登录、
内容聚合、个性化门户定制等功能的综合信息系统。
完整的 通常由 服务器、 容器、 构成。服务器是
容纳 的容器,支持 呈现的普通或者特殊 服务器。 服务器通常
会提供个性化设置、单点登录、内容聚合、信息发布、权限管理等功能,支持各种信息数
据来源,并将这些数据信息放在网页中组合而成,提供个性化的内容定制,不同权限的浏
览者能够浏览不同的信息内容。
通常, 提供以下功能
单点登录: 通常采用 、、 等业界标准的安全技术,提供对
所有现有应用系统的安全集成,只需在 的唯一入口上登录一次,就可以访
问所有应用系统和数据。对于安全性要求较高的应用系统,如电子商务平台、交
易系统等,通过扩展接口传递用户身份信息,如数字证书信息、数字签名信息等,
进行二次身份认证,保证单点登陆的安全性。
(,缩写 ),存取控制列表。
是轻量目录访问协议,英文全称是 !"#!"$
。
权限控制:系统采用 对用户资源进行统一的管理,同时提供二次开发接口,
可以与其他应用系统的用户管理模块对接,并能随相关业务系统实时更新访问权
限。通过完善的授权机制及存取控制,用户访问权限控制到字段级别,确保用户
只能访问具有权限的应用系统及相关信息。
内容管理: 实现应用系统之间实时交换信息。采用多种缓存机制,保证内容交换
的性能和准确性。采用基于 的 "%&&$'标准,迅速在各
应用系统之间传播最新变化。
信息发布:实现信息门户内容的动态维护。动态网站系统可与 ( 协同办公系统、
知识管理系统等集成,网站信息须经 ( 系统的审批流程流转通过后或知识管理
平台设置具有外部共享权限后才可正式发布,真正实现内外信息发布的同步。
文件管理: 系统实现无缝集成多种数据源,包括:数据库、文档( Oce 文档、

PDF、AutoCAD、甚至 ZIP 文档)、Web 网页、FTP 站点等,并对数据按业务要求
和职务特点加以分析整理,通过统一 Web 界面主动推送(Push)至用户的门户桌面,
帮助用户做出及时、正确的决策。
1.2. Portlet 和 Servlet 的关系
容器提供 执行的环境,包含很多 并管理它们的生命周期,保
存 的定制信息。
一个 容器接收到来自 的请求后,接着将这个请求传递给存在 容
器的 执行。 容器没有义务去组合 产生的信息內容,这个工作必须
由 来处理。 和 容器可以放在一起视为同一个系统的组件,或者分开
成为两个独立的组件。
容器是普通 容器的扩展,所以一个 容器可以构建于一
个已经 存在的 容器或者 可能实现全部 容 器的全部功能。无 论
容器怎么实现,它的运行环境总是假定它支持 )* 规范。
通常, 容器扩展自普通的 容器。
和 算是兄弟有那么一点点相似却又有那么一点点不同,因为
和 不尽然相同,所以研究小組決定将 + 定义成为一个新的组件,因此定义
了 + 一个新的并且明确的界面与行为。为了尽可能与现有的 结合达到重复
使 用的 目 的, + 的 规 范 利 用 了 的 规 范 , 许 多 观 念 都 很相 似 的, 结 合
+、 及 ,+ 在同一个网站系统中,我们称为 +++。在同一
个 +++ 中,他们将分享同一个 -,. 及 。
①、Portlet 和 Servlet 的相似之处
/也是 技术的 #组件
/也是有特定的 在管理
/可以动态产生各种内容
/的生命周期由 所管理
/和客户端的互动是通过 0%1+的机制
②、Portlet 和 Servlet 也有一些不同
/只产生 &2%+信息片段,不是完整的网页文件。而 会将所有的
&2%+信息片段放到一个完整的 网页。
/不会和 3有直接的关系
/客户端必须通过 +系统才能和 互动
/ 有 一 些 定 义 好 的 0% 处 理 , 0% 以 及 -
0%。
/默认定义 &-及窗口状态可以指出在网页中该 的哪个
功能正在执行及现在的 状态。
/可以在同一个 +网页之中存在多个。
③、Portlet 有一些附加的功能是 Servlet 所没有的
/能够存取及储存永久配置文件及定制资料。
/可以存取使用者数据
/具有 3的重写功能在文件中去动态建立连结,允许 +不用

去知道如何在网页的片 段之中建立连结及动作。
/可以储存临时性的数据在 之中,拥有两个不同的范围:
++4#-+及 ++。
④、Portlet 不具有一些功能, 但是 Servlet 却有提供
/具有设置输出的文字编码'"-!方式
/ 可以设置 输出的 "-
/ 才能够接收客户对于 +发出的 3请求
Portlet 的生命周期
的生命周期一个 有着良好的生命周期管理,定义了怎样装载,实例化
和初始化,怎样响应来自客户端的请求及怎样送出服务。这个 生命周期由
接口的 ,+,- 和 -$ 方法来表达。
载入和实例化
容器负责载入和实例化 。当 容器运行 应用或者延迟到
需要服务使用者的请求时, 就会被载入并实例化。载入 类后,
类随即被实例化。
初始化
类实例化后, 容器还需要初始化 。以调用 去响应客户
端 的 请 求 。 容 器 呼 叫 接 口 中 的 方 法 初 始 化 。 扩 展 自
5! 的类 可 以 取出 定义 在 部 署描 述文 件中 的初 始 化 参数 ,以 及 %
6%-。
初始化异常
在 初 始 化 期 间 , 可 能 会 丟 出 37.+ 或
7.+异常。此时, 容器不能把 置入已启动的服务,并且
容器必需释放这个 。 -$ 方法不能被呼叫,因为初始化被认为执行失
败。发生 失败后, 容器会尝试着重新实例化及初始化 。这个异常处理的规
则是:由一个 37.+指定一个不能执行的最小时间,当此异常发生时 ,
容器必需等到指定时间过去后才产生并且初始化一个新的 。
在初始化过程中所丟出的 %&7.+ 异常,被当作 7.+来处理。
重要的基类
8 像 一样,编写的 也必须直接或者间接的扩展基类
8,这个是由 针对 提出的 规范定义的。只要扩展自规范
的 8,所有的 都可以在支持 规范的 服务器上运行。
8 统一定义了可供 容器识别和调用的方法,包括:
+%9':初始化;
+%9'5!:初始化;
+%!9&'!:取得在 ).& 中定义的初始化参数;
+%!9&:&':取得在 ).& 中定义的全部初始化参数;
+%!5!':取得包含初始化参数的配置对象 5! 实例;
+%!.':取得 上下文;
+%!:&':取得在 ).& 中定义的 名称。
+%!%6%-':取得 国际化的 %6%-;
+-!'-0%:取得 的标题;
+--;#'-0%,-+: 浏览模式的处理方
法;

+--7-'-0%,-+: 编辑模式的处理方
法;
+--+'-0%,-+: 帮助模式的处理方
法;
+--+"'-0%,-+: 行为分发;
+- +'-0% , -+ : 处 理
0% 的方法;
+- -'-0% , -+ : 处 理 -
0% 的方法;
+%-$': 销毁,终止其生命周期。
在 Portlet Portal 运行的时候,doView、doEdit、doHelp 三个方法分别被调用,用以生成
Portlet 标记。同样也可以调用 Servlet 生成 Portlet 标记,或者不调用 JSP 或者 Servlet,直接
在方法中得到 PrintWriter 然后用最简单的 pw.println()打印出内容。这个过程类似 Servlet。
2. Portlet 标签
<$ 的标签包含:
跟 =一样,=也自定义了很多灵活的标签。通过这些标签,可以调用
内部的参数比如 -+、-0%、5!=等 , 在
=中跟 =通信。当然,在使用之前,除了要在 #).&=中声明标签库外,还要在
=的头部声明标签库调用:
Xml 代码
1. <%@tagliburi="http://java.sun.com/portlet"prefix="portlet"%>
2.1. defineObjects 标签
在使用 典型标签之前,要见声明>+-5(,1?,这样才可以使
用其他的标签。-5(,中间不允许定义任何属性和包含任何内容。
2.2. renderURL 标签
属性 值类型 对应值

windowStat
e
String
minimized
normal
maximized
portletMode String
view
edit
help
var String
secure String
true
false
Xml 代码
1. <portlet:renderURLportletMode="view"windowState="maximized">
2. <portlet:paramname="number"value="1"/>
3. <portlet:paramname="page"value="2"/>
4. </portlet:renderURL>
创建一个当前 -3,当访问它时将使 =窗口变为最大化状态,模式变为
浏览。>++&1?子元素会在生成的 -3=中增加 %&、+!=两个
参数和值。
2.3. actionURL 标签
属性 值类型 对应值
windowState String
minimized
normal
maximized
portletMode String
view
edit
help
var String
secure String
true
false
Xml 代码
1. <portlet:actionURLwindowState="normal"PortletMode="edit">
2. <portlet:paramname="action"value="login"/>
3. </portlet:actionURL>
创建一个当前 3,当访问它时将使 =窗口变为正常状态,模式变为编
辑 。 >+&1? 子 元 素 会 在 生 成 的 3=中 增 加 =参 数 和 值 。
-3=和 3=两个标签在诸如生成 <&=表单的 =等方面特别有用。
剩余51页未读,继续阅读













安全验证
文档复制为VIP权益,开通VIP直接复制

评论0