Jetspeed2.0中个性化定制的实现

支持个性化定制是Portal的一个特点。用户可以很方便地根据个人喜好进行个性化定制,如创建页面、选择页面布局、为每一个页面选择具体的Portlet内容、改变显示风格等。
用户个性化必须在系统权限允许的范围内进行。
 
概念介绍:
       在Jetspeed2.0中关于页面结构包含以下元素:
元素
描述
文件夹(Folder)
定义站点文件夹,存储多个页面
页面(Page)
多个片段的汇集。以psml格式定义
片段(Fragment)
动态生成的内容,通常就是一个Portlet或页面。
布局(Layout)
定义了多个页面片断被聚合后的显示模式
装饰(Decorator)
一个对动态内容进行装饰的静态或半静态标记
布局装饰
(Layout-Decorator)
对页面布局的装饰
Portlet装饰
(Portlet-Decorator)
针对Portlet进行的装饰
页面装饰
(Page-Decorator)
对页面进行装饰的标记。由页面布局和片断的装饰组成
 
实现:
       在/WEB-INF/conf/jetspeed-production.properties文件里定义了系统系统默认的布局类型和装饰风格。 当一个页面需要被显示时,页面装配器会获得当前适用的装饰风格,这个装饰可以使系统默认的,也可以是页面指定的。
       在Jetspeed2.0中所有页面元素文件都存放在/WEB-INF/pages目录下。
       个性化定制时可以先定义一个站点文件夹,此文件夹相当于一个资源文件夹包含多个页面内容。相关的页面信息定义在folder.metadata文件中,同时也能定义访问控制。
       页面元素由psml标记语言定义。一个页面元素包含一个缺省的layout-decorator和一个缺省的portlet-decorator。缺省的layout-decorator是必填项,用来标记整个页面布局的装饰。缺省得portlet-decorator是可选项,用来定义页面里包含的portlet的装饰。
       一个页面元素至少有一个布局片段。也可以包含多个布局,布局间是嵌套关系。Jetspeed2.0系统的布局是由portlet实现的,部署于/WEB-INF/apps/jetspeed-layouts下,由org.apache.jetspeed.portlets.layout.MultiColumnPortlet类实现。包括添加,删除,移动,更改装饰等操作。
       页面装饰可分为两部分:布局装饰和Portlet装饰。定义在/jetspeed/decorations下,使用的是Velocity的配置模板,就是一系列的vm文件。在这里需要强调的就是所有全局的宏定义在/WEB-INF/jetspeed-macros.vm文件里。每一个Portlet片段都可以定义自己的装饰,如果未定义就使用缺省得Portlet装饰,如果没有缺省的Portlet装饰,就是用缺省的布局装饰。
       可以将上述的各个元素画图来表示他们之间的关系:
       Folder -------->Page------->Default Decorator
                                   |                 (layout , portlet)
                                   |-- -------->Fragment   --------->Portlet
                                                     (layout)                     (decorator)
总结:
        Jetspeed2.0 实现了个性化定制功能,用户可以方便的定制页面布局和样式。系统提供的布局装饰和 Portlet 装饰可以为用户提供更大的便利来定义自己的页面风格。如果想设计自己的布局模式和装饰风格也是十分方便,定义一个 Portlet 应用,设计一个装饰风格放到 decorations 目录下即可。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

peterwanghao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值