JetSpeed-2技术资料 - 专注开源 - 张老三的专栏

来源:百度文库 编辑:神马文学网 时间:2024/05/23 13:49:48
JetSpeed-2技术资料文档:
JETSPEED2.0 概述
Jetspeed2.0最终release版本发布于2005年12月, 可以从以下网址下载源代码和捆绑tomcat的压缩文件: http://www.apache.org/dist/portals/jetspeed-2/   。
与Jetspeed1.x比较,Jetspeed2.0 (以下简称J2)的架构发生了很大变化, J1.x使用了Turbine,在J2中Turbine不再使用,  而是使用了Spring Framework作为默认的组件框架,从官方的资料介绍看,J2架构支持将一种组件架构替换为别的组建架构如Pico,Spring仅仅是J2默认的Component Framework,从本节下文的叙述中可以看到替换的方式。
JETSPEED-2 工作流程
1、request送至server后由JetspeedServlet接收。JetspeedServlet通过Jetspeed取得ComponentManager,然后通过ComponentManager取得RequestContextComponent。
2、RequestContextComponent会针对这个 request建立一个RequestContext,并且让这个request和新建的RequestContext能互相参照。
3、 呼叫Engine的service()方法,这个方法会把刚刚建立的RequestContext传入,这样后面的组件才能使用。
4、 在service()方法中,Engine会依据request的目标URL来取得相对应的Pipeline来处理。Pipeline使用了chain of responsibility的pattern,是由一堆Valve串起來的 。
5、 各个Valve依序执行,其中某些Valve会和Container动作,某些Valve会负责产生要response的portal页面。在这个过程中,Continer会执行相关的Portlet,并将結果返回至Pipeline,也就是Valve chain中。
6、 将产生的portal页面传回给user,流程結束。
JETSPEED-2安全机制
J2使用JAAS的来处理security有关的问题。在j2捆绑的tomcat中,从bin同级别目录conf中查找Catalina\localhost\jetspeed.xml,打开这个文件可看到有关JAAS Realm及login的设定。
大致上来说,JAAS包含Principal、Permission、Policy三个概念。在J2中有user、role、group三种Principal。而Permission基本上有page、portlet,tab等等,当然也可以增加自定的Permission。至于Policy,J2并没有使用JAAS的policy,而是使用自带的RdbmsPolicy,也就是把Policy的信息存在资料库中;而通过适当的设置, J2也可以使用相关App Server的JAAS。
JETSPEED-2的PORTAL BRIDGE
随着Portal一步步走向成熟其结构和功能也发生了较大变化,从混和型服务走向以系统框架为核心,应用程序与部署、开发完全分开的阶段,Portal相当与一个骨架一样可以接纳外部的这种技术架构开发的应用程序,使用Portals Bridges模式来连接不同的应用程序,可包括以下几种:
集成Struts MVC模式开发的应用程序;
集成WebWorks开发的应用程序;
集成JSF开发的应用程序;
集成Perl开发的应用程序;
集成PHP开发的应用程序;
相关技术介绍和规范
简单介绍了WSRP, PORTLET容器, PORTLET, PORTLET PREFERENCES, JSR168规范, PSML, LAYOUT, DECORATION, AGGREGATOR, PLUTO, EXO, LIFERAY, JPORTAL。
JETSPEED-2相关资源链接
文档下载:http://www.cchensoft.com/devguide/down/book/java/jetspeed2-doc.zip