Jetspeed是Apache组织开发的一个采用Java和XML的开放源代码的企业信息门户的实现。门户可以让终端用户可以很方便的访问网络 资源(应用、数据库等)。用户可以通过Web浏览器、WAP手机、寻呼机以及其它一些智能设备来访问Portal。Jetspeed就像是中心的控制器, 可以很方便地以各种形式展示那些来自不同数据源的数据。
通过Jetspeed展示的数据形式完全独立于内容的类型。这就意味着Jetspeed可以集成各种各样的数据源,如:XML、RSS、SMTP。然后通 过XSL技术将数据组织成Jsp页面或Html页面传给客户端。Jetspeed还支持模板和内容的发布框架,比如:Cocoon, WebMacro 和 Velocity。
Jetspeed框架结构和核心技术 Jetspeed采用Turbine做主要的框架支持,Turbine为Jetspeed提供用户认证、页面布局管理和计划服务等。Portlet可以直接使用Turbine服务提供的RunData对象。Jetspeed向用户展示的页面由Turbine控制产生,它的主要内容部分由一些标准的Portlet构成。Portlet设计的目标是: ◇ 一个页面上可以提供很多小的WEB应用程序给用户; ◇ 这些WEB应用程序的背景色、标题栏颜色、图标都可以更换; ◇ 可以用缓冲子系统维持跨多个Portlet的应用; ◇ 可以对所有的WEB应用程序进行管理、维护,并提供给用户; ◇ 简单的选择就可以让用户定制页面,这些页面除了一个页面可以显示多个Portlet之外,和Turbine的显示页面很相识; ◇ 由于缓冲子系统的存在,使得系统可以快速运行。这使得即使要和数据库打交道得复杂Portlet也可以快速生成Html页面; ◇ 很容易开发整个系统,开发人员不必知道整个Jetspeed的运行机制。 ◇ Portlet可以通过多种方式形成页面。可以通过JDBC从数据库记录产生页面;可以通过XML—>XSL—>HTML产生页面;可以通过其它途径如CoCoon形成页面; ◇ Portlet允许对它的显示风格进行定制,比如背景色、尺寸等。 ◇ Portlet通过PortletController来管理。这个PortletController是标准接口的实现,开发者可以定制它们; ◇ Portlet交给PortletControl来处理,PortletControl给Portlet加上显示风格后返回Portlet的内容; ◇ Jetspeed内通过XML标记文件分类管理Portlet; ◇ Portlet接受一个PortletConfig参数,这个参数中包括Url地址和一些参数的哈希表; ◇ 大多数简单的Portlet可以通过继承AbstractPortlet来实现。