clant
随笔 - 19, 文章 - 93, 评论 - 17, 引用 - 0
数据加载中……
Portlet技术发展的思考
Portal
这个概念出现很长的时间了,然而
Portal
应用是直到最近这两三年才蓬勃发展起来,这跟原来缺乏相关的规范有一定的关系。目前关于
Portal
方面存在两个重要的标准,均是2003年下半年正式通过的,分别为:
1、
Java Portlet Specification 1.0
(JSR168), 2003年10月27日
2、
Web Services for Remote Portlets
1.0, 2003年9月3日
这两个规范发布之后,得到各个
Portal
产商的支持,特别是JSR168标准更是得到OpenSource界的大力支持。许多开源项目都声称支持JSR168标准,具体项目列表可以参考:
Open Source
Portal
in Java
。
不过在对这些标准学习之后,我认识到除了实现一个支持标准的服务器之外,还有很多空间是值得我们去努力的。如果有人正在进行
Portal
方面的研究、实现,希望我的想法能够有所帮助。
Java Web Framework -> JSR168
我学习JSR168这个规范后,我就认识到开始一个JSR168 Portlet不会是一件愉快的事情。JSR168 Portlet十分类似于Servlet,现在还有谁愿意只是基于Servlet来开发Web应用呢?更进一步的问题是:开发人员需要直接编写JSR168 Portlet么?答案是不需要!
所谓Portlet本身来说就是一个Web应用,只是运行在
Portal
才被称为Portlet。业界已经有大量熟练的Java Web应用开发人员,让他们去重新学习一种新的Web应用模式、并且只能运行在在
Portal
中是不现实的,正确的方式应该是能够把普通的Java Web应用包装成JSR168 Portlet。这样开发人员依然按照原来的模式开发Web应用,只是在部署到
Portal
之前才包装成JSR168 Portlet。目前许多Java Web应用都是基于某些Web Framework(例如Struts)来实现,因此可以考虑基于这些Web Framework的包装方法。
对于这个包装器,我目前想到需要注意的地方有:
1、URL转换。Web应用中使用普通的URL,然而访问一个Portlet的URL有其特殊的格式,因此需要把指向自身的URL全部转换为Portlet格式。这些URL主要是HTML FORM中的ACTION属性。
2、Session范围。Session在Portlet中分为PORTLET_SCOPE和APPLICATION_SCOPE两种,为了避免冲突缺省情况下应该把Web应用中的Seesion变量都设置为PORTLET_SCOPE。
3、开发人员透明。Web应用是否包装为Portlet对Web应用本身不做更改,这样即使被包装为Portlet后,开发人员仍可当作普通的Web应用继续开发。
4、可选的Portlet特性。使得开发人员能够在Web应用中使用Portlet特性,当Web应用独立部署运行时这些特性自动失效,当部署到
Portal
中就可以利用到Portlet特性了。
Common Web Application -> WSRP
WSRP规范致力于定义一个面向表示(presentation-oriented)的Web Services协议以及相应的接口集,面向表示的Web Services协议不仅提供商业逻辑还提供界面表示,应用程序可以容易的通过代理工具集成面向表示的Web Services。
在
Portal
应用中,经常有将现存的某个应用在
Portal
界面中显示的需求,而且该应用是运行在与
Portal
服务器不同的机器上的。这种需求在
Portal
项目中使极为常见的,解决的方法主要有:1、如果应用提供java接口,可以建立JSR168 Portlet使用该接口;2、如果应用存在Web界面,则可通过Web裁减(Web Clipping)技术来集成,
Kapow
公司是这一技术的领先者;或者通过HTML IFRAME技术作简单的集成。
WSRP规范出现后,我们有了更加方便的新选择,如果应用本身支持WSRP,那么
Portal
服务器可以直接集成该应用无需额外开发。但是目前支持WSRP的应用还太少,而且期待现存的应用自身增加WSRP支持也是不现实的。例如对一个现存的部署在Apapche Http Server上的PHP应用,用户当然希望无需对该应用进行任何更改就能够支持WSRP。
我曾写过一篇短文
“WSRP实践&想法”
阐述这方面的想法。我最希望看到这样的WSRP工具出现,安装在Web服务器上后,通过配置就能够将部署在该Web服务器上的应用以WSRP协议发布。
这样的工具主要的是两部分的功能:
1、当然是WSRP协议支持。可以参考已有的开源实现,我想其中的初期的重点是URL Wirting和Stateful Information,即URL的双向转换和状态信息的处理。
2、与现有应用的交互,可以从两个方向来实现:
2.1 利用服务器功能,例如Java Servlet Server提供javax.servlet.RequestDispatcher接口实现来完成对本服务器上的资源调用。这样做的优点的性能高效,缺点是不同的服务器要开发不同的版本;
2.2 采用类似HTTP Porxy的方式实现。优点是适应性强,不必理睬Web应用的具体实现、部署技术,缺点是性能会有影响。
以上就是我的一些想法,希望尽快看到相关的产品出现,这些开发
Portal
应用就会轻松很多。
posted on 2006-12-05 10:19
BPM
阅读(470)
评论(0)
编辑
收藏
所属分类:
Portal
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
相关文章:
Strong IPP V3策划
用JBoss应用服务器以及Jahia Portal Server提供信息门户
CMS和Portal选择
portal概念
Portlet技术发展的思考
Powered by:
BlogJava
Copyright © BPM
导航
BlogJava
首页
新随笔
联系
聚合
管理
<
2024年12月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(6)
给我留言
查看公开留言
查看私人留言
随笔分类
(22)
书籍分析(1)
(rss)
关于思想(3)
(rss)
关于高质量生活(3)
(rss)
职业规划(2)
(rss)
规划(4)
(rss)
计算机领域(7)
(rss)
软件开发管理(1)
(rss)
软件系统设计经验(1)
(rss)
随笔档案
(19)
2006年11月 (2)
2006年4月 (17)
文章分类
(107)
BPEL(11)
(rss)
BPM(1)
(rss)
EAI/ESB(5)
(rss)
flow网址(1)
(rss)
Hibernate(2)
(rss)
Java 安全标准(15)
(rss)
JMS(3)
(rss)
MDA
(rss)
Portal(5)
(rss)
SCA/SDO(6)
(rss)
SOA(16)
(rss)
web services(9)
(rss)
workflow(9)
(rss)
XML标准
(rss)
动态表单技术(1)
(rss)
咨询业(1)
(rss)
工作流基础(10)
(rss)
搜索引擎
(rss)
数据仓库
(rss)
规则引擎(8)
(rss)
软件架构 (4)
(rss)
文章档案
(93)
2006年12月 (52)
2006年11月 (10)
2006年4月 (15)
2005年11月 (7)
2005年9月 (1)
2005年3月 (1)
2004年10月 (1)
2004年9月 (3)
2004年8月 (2)
2004年6月 (1)
信息安全
China CISSP 信息安全 论坛
theserverside.com
Web 服务安全性(WS-Security)的机制
WS-Security与Java:实用的、深入的、基于消息的安全
WS-Security中WSE2.0和SUN JWSDP1.5的协作
xml论坛 XML安全专题
介绍一些安全方面的外国文献
商业
arron99
工作流同行
hongsoft
(rss)
银狐999
(rss)
心情朋友
ChrisRc@浩瀚的天空
小奕思
浙大的姜楠
搜索引擎
Luence-- Full-Text Search engin
文本搜索引擎
智能化商业应用
BPM、业务规则和商业智能创建智能的、灵活的解决方案
按需业务流程生命周期,第 1 部分: 为您的按需业务流程构建基础
推荐学习材料
用 BPM、业务规则和商业智能创建智能的、灵活的解决方案 第 2 部分: 一个动态定价场景
用 BPM、业务规则和商业智能创建智能的、灵活的解决方案(第 4 部分)
用 BPM、业务规则和商业智能创建智能的、灵活的解决方案: 第 3 部分:数据仓库的可视性
规则引擎
Business Process Execution Language BPEL
Drools
Drools--能做什么,什么时候使用它
Java规则引擎与其API(JSR-94)
Java规则引擎与其API应用详解
Java规则引擎工作原理及其应用
Java规则引擎技术研究
Java规则引擎的集成
使用weblogic portal规则引擎中实现动态业务逻辑
深入了解WPS中的Business Rules
规则引擎
软件系统设计学友
刘升平
软安全技术同盟会
beegee's blog
搜索
最新评论
1. re: XML 安全: 使用 XACML 控制信息访问
你好,我运行了这个程序,PDP能运行但是没有request与policy对比的结果,想问一下怎么回事?
--杨琳杰
2. re: XACML 和 SAML的讨论
博主您好。我现在也在看XACML和SAML相结合方面的内容,毕业论文可能也要跟这个有关系。您有什么新的进展能发给我看看么?邮箱:chenjun6036@gmail.com
--chenjun
3. re: XACML 和 SAML的讨论
博主你好,我正在学习XACML技术,要完成一个毕业设计,能发一份你的论文给我,留个联系方式讨论一下吗,谢谢,感激不尽!mail:xuminv@gmail.com
--chenzui
4. re: XACML 和 SAML的讨论
评论内容较长,点击标题查看
--HL
5. re: XACML 和 SAML的讨论
评论内容较长,点击标题查看
--金金