Portlet 开发指南

 

                                                               Portlet 开发指南

 目录

Portlet 开发指南...............................................................................................................................1
第一章节入门介绍.........................................................................................................................7
        一、             Portlet 简介...............................................................................................................8
               什么是Portal ....................................................................................................................9
               什么是Portlet...................................................................................................................9
               什么是Portlet 容器..........................................................................................................9
               三者关系.........................................................................................................................10
               版本兼容性.....................................................................................................................10
               JSR286  的主要新特性....................................................................................................10
               与J2EE  的版本对应.......................................................................................................10
        二、             Portlet 与servlet 的关系........................................................................................11
               Portlet 与servlet/jsp 中的桥梁......................................................................................12
               用servlet 生命周期事件................................................................................................12
               Servlet 容器与Portlet 容器之间的关系........................................................................12
       三、              开发环境搭建.........................................................................................................13
               IBM WebSphere Portal 环境搭建...................................................................................13
               Apache Pluto Portal 环境搭建........................................................................................24
               快速入门.........................................................................................................................29
第二章节独有概念.......................................................................................................................36
        四、  Portlet 概念.............................................................................................................37
               Portlet 定义.....................................................................................................................37
               Portlet 是Portal 页面中的一个区域.............................................................................37
               Portlet 和Web 框架.......................................................................................................38
        五、             Portlet URLs.............................................................................................................39
               BaseURL  接口.................................................................................................................39
               包含Portlet Mode 和Window State 信息...................................................................40
               Portlet URL 安全性.........................................................................................................40
               总结.................................................................................................................................40
       六、              Portlet Modes..........................................................................................................42
               查看 Portlet Mode.........................................................................................................42
               编辑 Portlet Mode.........................................................................................................42
               帮助 Portlet Mode.........................................................................................................42
                自定义Portlet Modes ...................................................................................................42
               受支持的 Portlet Modes................................................................................................43
       七、  Window States ........................................................................................................44
               正常Window State ........................................................................................................44
               最大化Window State ....................................................................................................44
               最小化Window State ....................................................................................................44

                 2

----------------------- Page 3-----------------------

                                                               Portlet 开发指南

                自定义Window States ..................................................................................................44
               支持的Window State ....................................................................................................44
        八、             Portlet Preferences..................................................................................................45
               PortletPreferences            接口................................................................................................45
               Preference Attributes              范围............................................................................................45
               Preference Attributes              定义............................................................................................46
第三章节基础概念.......................................................................................................................47
        九、             Portlet 生命周期接口.............................................................................................48
               Portlet     实例的数量........................................................................................................48
               Portlet 生命周期.............................................................................................................48
               Portlet      的个性化............................................................................................................49
               Request 请求处理...........................................................................................................50
               总结.................................................................................................................................54
        十、             Portlet Config ..........................................................................................................55
               初始化参数.....................................................................................................................55
               Portlet Resource Bundle..................................................................................................55
               默认事件命名空间.........................................................................................................56
               公告展现参数.................................................................................................................56
               发布事件.........................................................................................................................56
               处理事件.........................................................................................................................56
               支持的国际化.................................................................................................................56
               支持的运行时选项.........................................................................................................56
               总结.................................................................................................................................57
        十一、                   Portlet Context ................................................................................................58
               Portlet Context 范围.......................................................................................................58
               Portlet Context          功能......................................................................................................58
               与Servlet Context 关系.................................................................................................58
               总结.................................................................................................................................59
        十二、                   Portlet Requests ..............................................................................................60
               PortletRequest  接口......................................................................................................60
               ClientDataRequest             接口.................................................................................................64
               ActionRequest           接口.......................................................................................................64
               ResourceRequest  接口..................................................................................................64
               EventRequest  接口........................................................................................................65
               RenderRequest  接口......................................................................................................65
               Request 对象的时间范围..............................................................................................65
               总结.................................................................................................................................65
        十三、                   Portlet Response .............................................................................................66
               PortletResponse            接口....................................................................................................66
               StateAwareResponse                接口............................................................................................68
               ActionResponse            接口.....................................................................................................68
               EventResponse  接口......................................................................................................68
               MimeResponse             接口......................................................................................................69
               RenderResponse  接口...................................................................................................69

                 3

----------------------- Page 4-----------------------

                                                               Portlet 开发指南

               ResourceResponse  接口................................................................................................70
               Response  对象的时间范围...........................................................................................70
        十四、                   Sessions ...........................................................................................................71
               创建Session....................................................................................................................71
               Session      范围...................................................................................................................71
               Session 中设置属性........................................................................................................71
               与Web Application HttpSession 关系............................................................................71
               写入Portlet Session........................................................................................................72
               Session Timeouts.............................................................................................................73

               最后访问时间.................................................................................................................73
               重要的Session                语义.....................................................................................................73
               总结.................................................................................................................................73
        十五、                   请求分发给Servlets                     和JSPs .......................................................................74
               获取 PortletRequestDispatcher.....................................................................................74
               使用Dispatcher ..............................................................................................................74
               Include      方法...................................................................................................................74
               forward       方法..................................................................................................................75
               Servlet filters ...................................................................................................................76
               改变默认的Included Forwarded Session                                 范围............................................................76
               总结.................................................................................................................................76
        十六、                   Portlet     标签库................................................................................................77
               defineObjects          标签........................................................................................................77
               actionURL        标签..............................................................................................................79
               renderURL         标签.............................................................................................................79
               resourceURL 标签...........................................................................................................80
               namespace 标签.............................................................................................................81
               param 标签.....................................................................................................................81
               总结.................................................................................................................................81
        十七、                   Portlet     应用....................................................................................................82
               与Web Applications 的关系..........................................................................................82
               与PortletContext 的关系...............................................................................................82
               Portlet Application 中的元素.........................................................................................82
                目录结构.........................................................................................................................82
               Portlet Application Classloader.......................................................................................82
               Portlet Application  存档文件........................................................................................82
               Portlet application           部署描述符.....................................................................................83
               更新Portlet Application .................................................................................................83
        十八、                   打包和部署描述符.........................................................................................84
               Portlet 和部署描述符.....................................................................................................84
               打包.................................................................................................................................84
               Portlet 部署描述符元素.................................................................................................84
               处理Portlet            部署描述符规则.......................................................................................85
               Portlet.xml 中唯一的值..................................................................................................85
第四章节 高级特性.......................................................................................................................86

                 4

----------------------- Page 5-----------------------

                                                               Portlet 开发指南

       十九、                    资源服务.........................................................................................................87
               ResourceServingPortlet  接口.........................................................................................87
               访问 Render             参数、 Portlet Mode、Window State.................................................88
               访问Request  和 Response Headers.............................................................................88
               获取 HTTP  方法............................................................................................................89
               访问Resource ID ............................................................................................................89
               Resource URLs.................................................................................................................89

               Generic Portlet          支持......................................................................................................89
               Ajax 请求.........................................................................................................................89
        二十、                   Portlet 协作.....................................................................................................91
               Public Render Parameters...............................................................................................91
               Portlet Events..................................................................................................................92

               Events 传送复杂对象.....................................................................................................96
               总结.................................................................................................................................96
        二十一、                  Portlet Filter ....................................................................................................98
               什么是 Portlet filter.......................................................................................................98
               主要概念.........................................................................................................................99
               总结...............................................................................................................................101
第五章节可选概念.....................................................................................................................102
        二十二、  缓存...............................................................................................................103
               缓存过期.......................................................................................................................103
               验证缓存.......................................................................................................................103
               总结...............................................................................................................................104
        二十三、  用户信息.......................................................................................................105
               定义用户属性...............................................................................................................105
               访问用户属性...............................................................................................................105
               重要注意事项...............................................................................................................106
               总结...............................................................................................................................106
        二十四、  安全性...........................................................................................................107
               介绍...............................................................................................................................107
               角色...............................................................................................................................107
               安全性代码开发...........................................................................................................107
               总结...............................................................................................................................107
        二十五、                  Portal Context................................................................................................108
        二十六、                  Portlet     容器运行时......................................................................................109
               动态修改Portlet 标题..................................................................................................109
        二十七、  使用注释的方法...........................................................................................111
               GenericPortlet Render Handling ...................................................................................111
        二十八、  Setting next possible Portlet Modes .............................................................112
        二十九、  Struts2 开发Portlet 实例.............................................................................113
       三十、                    Spring mvc 开发Portlet 实例.......................................................................114
       三十一、                   附录...............................................................................................................115
               修改记录.......................................................................................................................115
               名词解释.......................................................................................................................115

                 5

----------------------- Page 6-----------------------

                                         Portlet 开发指南

疑问...............................................................................................................................116

  6

----------------------- Page 7-----------------------

                                 Portlet 开发指南

第一章节 入门介绍

    入门介绍主要包括Portlet 开发中三个基本概念(Portlet、Portlet 容器、Portal)的介绍,
Portlet 与servlet 的关系,以及搭建开发环境,并进行部署。

         7

----------------------- Page 8-----------------------

                                Portlet 开发指南

一、 Portlet 简介

    Portlet 与servlet 一样,都是JSR  的规范api 定义,不同的Portlet 还比较“年轻”,目前
版本还只到2.0,而servlet  规范已经相当成熟,发布了多个版本。如果不是十分准确的说,
Portlet 只是另一种开发web 程序的api,从这个方面说,开发Portlet 并没有什么神秘的地方,
但是之所以有Portlet 这个规范,Portlet 适用的场景肯定与servlet 是不同的,比如开发Portlet
不但要与Portlet 容器打交道,还要与Portal 打交道。读者在学习Portlet 开发的过程中,可
以不时的用servlet 的概念与Portlet 相比较,比较两者的异同,可以达到事半功倍的效果。
   刚才说到Portlet 规范已经出到2.0,分别是JSR168,JSR286。JSR 168            目前在业界受到广
泛支持,目前我们开发的大部分代码都是基于JSR168 的,JSR168 规范支持基本的开发方式,
虽然提供的功能比较少,但是已经基本可以满足日常需要。JSR168                         发布三年之后,大多数
支持Java Portlet Specification V1。0 的门户产品都提供一些附加扩展,以支持更高级的用例,
这些附加的扩展造成了各个门户产品的标准不统一,彼此间的交互协作成了不可避免的问题。
为了更好地规范Portlet       开发,以适应业界发展,并提供适应于最高级别用例的标准解决方
案,从而为这些高级功能提供互操作性,在2005                   年 11  月开始了Java Portlet Specification
V2.0  (称为JSR 286)的开发,在2008 年1 月Java Portlet Specification V2.0 目前已经正式发
布。JSR 286 规范兼容了JSR 168,并完善了JSR 168          的部分功能,并提供了诸多JSR 168  所
没有的新特性,例如资源服务、事件、Portlet              过滤器、共享呈现参数及 Portlet          窗口等。与
V1 。0 类似,V2.0   也将基于J2EE 1.4,因此可让Portlet       使用J2EE 1.4  增强(如JSP 2.0)。
下面是该新规范的一些主要功能及特性:
   1.  资源服务:一种新的通过Portlet          呈现资源的方式。
   2.  事件:通过发送事件和接收事件来实现 Portlet               之间的通信。
   3.  Portlet 过滤器:与 servlet  过滤器类似,根据 Portlet       请求和响应动态的呈现内容
       的变换。存在以下四种类型的Portlet            过滤器:
          o  Action 过滤器
          o  Render 过滤器
          o  Resource  过滤器
          o  Event 过滤器
   4.  共享呈现参数:除了 Portlet       私有的呈现参数之外,新增了可以在 Portlet             之间共享
       的呈现参数。
   5.  Portlet 窗口:提供 Portlet  窗口 ID  供 Portlet 使用
   要讲解Portlet,首先要明确三个概念:Portal、Portlet、Portlet  容器。Portlet  与Portlet
容器的关系可以比较servlet 与servlet 容器的关系,两者是完全一致的,开发者按照Portlet
规范开发Portlet,部署在中间件提供商(ibm、oracle、apache)提供的Portlet 容器中运行,
比较难理解的是Portal,首先Portal 是一个JEE  的application,Portal 负责提供页面给客户,
其次Portal 里面的内容是Portlet 生成出来的。一般的过程是,用户通过web 客户端向Portal
发起http 请求,Portal 解析这些请求,把请求“下发”给Portlet 容器,Portlet 容器来调用
Portlet,由Portlet 产生输出返回给Portlet 容器,Portlet 容器再把输出返回给Portal,Portal
负责把这些Portlet 的输出聚集起来,把内容返回给web 客户端。下面来具体描述一下Portal、
Portlet、Portlet 容器三个概念。

         8

----------------------- Page 9-----------------------

                                  Portlet 开发指南

什么是Portal

    Portlet 规范中是这样定义Portal 的:

A  Portal is  a  web  based  application  that –commonly- provides  personalization  、
authentication、content aggregation from different sources and hosts the presentation layer of
Information Systems。

    Portal 是一个基于web 的提供个性化、登录授权、从不同的数据源聚集内容基于展现层
的信息系统。具体到J2EE 领域,Portal 大多数情况是一个符合J2EE 标准的ear 包工程。

什么是Portlet

    规范中式这样定义Portlet 的:

A Portlet is an application that provides a specific piece of content (information or service) to
be included as part of a Portal page。It is managed by a Portlet container、that processes
requests and generates dynamic content

    一个Portlet是一个基于java 技术的被Portlet容器管理的web 组建,它可以处理requests、
生成动态的内容输出,一个Portlet 负责提供Portal                页面中的某个

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值