手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

Apache 门户项目组介绍

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

由上面的两个文档,我们能够清楚地看出UserManager是定义security-managers.xml文档中的,但是为了能够在portlet服务中引用他,还必须在jetspeed- services.xml中再次引用他的bean name,org.apache.jetspeed.services.JetspeedPortletServices封装了一个Map数据结构, Map中存放的就是服务名称和该服务POJO对象引用,这一切便利都是由Spring带来的。

下面是在Portlet的代码中使用该服务的例子:


protected UserManager userManager = null;

            public void init(PortletConfig config) throws PortletException {

            super.init(config);

            userManager = (UserManager)

            getPortletContext().getAttribute(CommonPortletServices.

            CPS_USER_MANAGER_COMPONENT);

            if (null == userManager) {

            throw new PortletException("Failed to find the User Manager

            on portlet initialization");

            }

            }

            

Jetspeed鼓励Portlet研发者在研发过程中,将公共的Service用Spring Bean的方式封装起来,然后添加到Jetspeed-services中,这样就能够在Portlet代码中轻松复用这些公共Service了,并且还能够利用Spring来管理这些Service的生命周期。事实上,Jetspeed自带管理界面Portlet应用程式就大量采用了这种技术。

更有一个需要注意的问题是,用户自定义的Service必须放到Tomcat的shared\lib下面去,以确保JAVA Classloader能够找到他。

Jetspeed核心组件简介

介绍了那么多Jetspeed架构方面的信息,下面我们一起来快速浏览一下Jetspeed Portal的核心组件。

Jetspeed-Api

路径:components/jetspeed-api

定义几乎任何的jetspeed-api interfaces,一般的研发者都使用这个组件中定义的接口进行二次研发。

Component Manager

路径:components/cm

Jetspeed组件管理器,通过接口org.apache.jetspeed.components.ComponentManager屏蔽了Spring的实现细节。能够通过实现该接口替换Spring。

Deploy-Tool

路径:components/deploy-tool

当Web Container为Tomcat时,通过该组件,读取已打包好的portlet应用程式中的portlet.xml和web.xml,检查是否包含JetspeedContainerServlet的定义,假如没有则修改web.xml加入这部分信息。

Id-Generator

路径:components/id-generator

用于生成全局唯一的portlet实例id。

Locator

路径:components/locator

提供定位门户资源的服务,资源包括:模板,Profiler等。

Page-Manager

路径:components/page-manager

对著名的门户结构描述文档-PSML(Portal Structure Markup Language),提供了Java对象模型映射,并且支持文本风格的PSML和数据库风格的PSML,连同PSML管理器。

Portal

路径:components/portal

实现绝大部分的jetspeed-api组件中定义的interface,是最核心的组件。

Preferences

路径:components/prefs

实现了Portlet属性偏好功能,提供将这些属性持久化到数据库的服务。

RDBMS

路径:components/rdbms

Jetspeed中任何和Apache OJB O/R Mapping框架有关的组建的基础组件。

Search

路径:components/search

提供整个门户资源的全文本搜索服务,具体实现依赖于Apache Lucene。

Security

路径:components/security

提供基于标准JAAS的认证服务,支持数据库和LDAP作为认证信息仓库。基于角色的授权服务,默认支持数据库作为权限仓库。

Single Sign-on

路径:components/sso

提供一个可扩展的单点登陆服务接口和一个简单的基于JAAS Subject的实现,该组件主要提供Portal门户和后台应用之间的单点登陆功能。

Statistics

路径:components/statistics

提供一个简单的访问请求统计服务的实现,支持将统计信息持久化到数据库。在Jetspeed-2管理界面中,还提供了专门的Portlet浏览这些统计信息。

总结

本文带读者浏览了Apache Portal项目组的任何成员,并着重介绍了Apache Jetspeed-2 Portal。希望能够使不了解门户技术的朋友对他有一个初步的认识,找到自己感兴趣的方向,继续深入研究;同时对那些试图在项目中使用开源软件的研发者,提供一些能够借鉴的信息。纵观现在开源软件中的门户实现,还没有哪一个社区能够提供像Apache Portal项目组这样完整的解决方案同时,还拥有如此友好的许可策略。只要去深入了解,开源软件往往能够给人们带来意外的惊喜。


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!