`
holdbelief
  • 浏览: 707543 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在WebSphere Portal中调用PUMA SPI管理用户、组

 
阅读更多

    在Portal开发中,遇到需要获得用户、用户组信息时,就需要调用PUMA SPI(Portal User Management Architecture System programming interface)了。

    PUMA SPI提供获得当前及系统任何用户、组profile的方法,并可对用户和组进行增、删、改。
    PUMA SPI主要包括三个接口
    PumaProfile:可以获得当前或其他用户、组的属性值(profile)
    PumaLocator:可以查询任何用户、组的信息
    PumaController:可以新增、修改、删除用户和组的信息
    PUMA SPI的调用
    PUMA SPI可以在各种Portal应用中调用,不同类型的应用分别调用不同的home接口,包括

    标准(JSR168)portlet
    com.ibm.portal.um.portletservice.PumaHome
    IBM portlet
    com.ibm.portal.um.portletservice.legacy.PumaHome 
    Portal应用(主要是theme和skin)
    com.ibm.portal.um.PumaHome 

    以JSR 168 Portlet中调用为例,调用代码段如下所示,忽略异常处理,有异常就直接向上抛好了,反正这里也处理不了:
    PumaHome service;
    if ( service == null )
    {
        InitialContext ctx = new InitialContext(); // 初始化上下文
        PortletServceHome psh = ctx.lookup("portletservice/com.ibm.portal.um.portletservice.PumaHome"); // 获得Home接口
        service = (PumaHome)psh.getPortletService(PumaHome.class);//获得服务接口 
    }

    PumaLocator locator = service.getLocator(request);//获得PumaLocator 接口 
    PumaProfile profile = service.getProfile(request);//获得PumaProfile接口 
    User user = profile.getCurrentUser();//获得当前用户 
    List groups = locator.findGroupsByPrincipal(user,true);//获得用户所处组 
    List userGroupNames = new ArrayList();//用于保存用户所处组的名称 
    List attr = new ArrayList(); 
    attr.add("cn");//用于从Group对象中获得cn属性
    Group group = null;
    for ( Iterator it = groups.iterator(); it.hasNext() )
    {
        group = (Group) it.next();
        userGroupNames.add(profile.getAttributes(group, attr).get("cn")); // 将Group对象列表中的组名置入一个新的List对象中
    }

    JavaDoc文档位于PortalServer安装路径的doc目录下.
    如/opt/IBM/WebSphere/PortalServer/doc/Javadoc/spi_docs
    如果使用RAD开发,IDE可以自动添加依赖的Portal包;如果不使用RAD,则开发时需要手工添加需要依赖的jar包到classpath以便进行编译,打包时则不要把这些jar包添加到war包中。相关jar包可以在/opt/IBM/WebSphere/PortalServer/shared/app目录中找到。在JSR 168的Portlet的开发环境中,需要依赖的包有wp.user.api.jar,wp.pe.api.standard.jar,wp.base.jar 
    
    哎,程序员容易吗?别人Happy的时候,我们还在TMD研究这些破技术。。。累了,上网看美女去。。。555

分享到:
评论

相关推荐

    获取IBM WebSphere Portal当前用户组

    在IBM WebSphere Portal环境中,获取当前用户所属的用户组是一个常见的需求,这有助于实现权限管理、个性化内容展示等功能。以下是如何实现这个功能的详细步骤: 首先,我们需要导入相关的IBM WebSphere Portal用户...

    WebSphere Portal Server 白皮书

    其中,Portal Server是核心,提供展示、用户管理、安全性等通用服务;WebSphere Personalization提供基于规则和推荐的个性化技术;WebContent Publisher则专注于内容和文档的发布;而WebSphere Studio Application ...

    websphere portal开发手册

    9. **升级与迁移**:详细步骤和注意事项,帮助用户从旧版本的WebSphere Portal升级至新版本,或者在不同环境中迁移门户。 10. **最佳实践与案例研究**:分享实际项目中的成功经验,为开发者提供有价值的参考。 总...

    WebSphere Portal 集群详细安装文档

    在“用户和组”->“管理组”下创建名为wpsadmins的组,并在“管理用户”下创建用户wpsadmin,分配相应的权限。 最后,集群配置完成后,务必验证集群的健康状态和功能。通过DM控制台检查各节点的状态,测试集群的...

    ibm websphere portal 学习资料

    IBM WebSphere Portal 是一款强大的企业级门户平台,它允许组织构建、管理和个性化复杂的Web...这些学习资料将是你通往IBM WebSphere Portal专家之路的重要指南,帮助你在实际项目中发挥WebSphere Portal的最大潜力。

    WebspherePortal的Oracle数据库迁移

    在IT行业中,数据库迁移是一项常见的任务,特别是在企业级应用中,如WebSphere Portal。WebSphere Portal是一款由IBM提供的强大企业门户平台,它依赖于数据库来存储配置信息、用户数据以及各种门户组件的状态。本篇...

    IBM演示-WebSpherePortal教程

    在本教程中,我们将深入探讨WebSphere Portal的关键特性和功能。 1. **WebSphere Portal架构** - **基础架构**:WebSphere Portal基于Java EE(Java Enterprise Edition)和IBM's WebSphere Application Server,...

    IBM Websphere Portal Primer

    The dictionary defines a portal as a grand or imposing door or entrance; hence, that picture on the cover. In this book, you will learn why the word portal has become a major buzzword in the world of ...

    Websphere Portal管理与开发

    在IT领域,特别是企业级应用开发与管理中,IBM Websphere Portal作为一款成熟且功能强大的门户解决方案,占据了举足轻重的地位。Websphere Portal不仅提供了丰富的特性,如个性化、社区构建、内容管理和集成服务,还...

    WebSpherePortal6.1集群安装

    - 配置用户和组映射规则。 - 参考附录 A 中列出的 LDAP 安全性相关的属性列表进行配置。 2. **其他安全性配置**: - 配置 HTTPS 证书,确保数据传输的安全性。 - 配置登录页面和身份验证策略。 - 实现细粒度的...

    IBM WebSphere Portal 个性化设计

    本文档详细介绍了如何在 WebSphere Portal V6.0 中实施个性化,并提供了多个实践案例。其中包括基于规则的个性化,涉及到 Web 内容管理 (WCM) 和门户文档管理 (PDM) 的应用,以及如何创建和使用属性基础管理规则等...

    Linux环境安装IBM WebSphere Portal

    WebSphere Portal是IBM提供的一款企业级的门户平台,它允许组织创建、管理和部署具有高度交互性的Web应用,以提升工作效率并增强用户体验。 首先,我们需要了解安装所需的资源。IBM提供的安装介质由五个ISO文件组成...

    websphere portal 7 主题开发

    在WebSphere Portal V7中,为了实现自定义的用户界面体验,开发者需要创建自己的主题。WebSphere Portal 7 提供了两种内置主题,但为了满足特定需求,我们可以基于PageBuilder2构建新的主题。复制PageBuilder2主题...

    IBM演示WebSpherePortal教程

    IBM演示WebSpherePortal教程

    WebSphere Portal7入门教程:portal7页面构建器

    PageBuilder 是 IBM WebSphere Portal V7 中用于创建和定制门户页面的主要工具,它提供了丰富的用户界面,让开发者和非技术人员都能轻松创建美观且功能强大的门户页面。 #### 二、PageBuilder 主题与样式介绍 从 *...

    Websphere Portal 开发教材

    1. **Websphere Portal概述**:Websphere Portal是IBM的一款旗舰级企业软件,用于构建统一的入口点,将各种业务应用程序、内容和服务整合在一起,提供一致、个性化的用户体验。它支持Web2.0特性,如社区、博客、论坛...

    websphere portal 集群 ldap配置详细文档

    在IT行业中,WebSphere Portal是一款由IBM开发的企业级门户服务器,它允许组织创建和管理复杂的、集成化的Web应用程序。在大型企业环境中,为了提供高可用性和负载均衡,WebSphere Portal通常会部署为集群。LDAP(轻...

    WebSphere Portal

    IBM WebSphere Portal 由用于构建和管理安全的企业对企业(B2B)、企业对客户(B2C)和企业对雇员(B2E)门户网站的中间件、应用程序(称为 portlet)和开发工具组成。WebSphere Portal 的基本产品提供个性化、web ...

    WebSphere Portal Express v6.1 安裝練習

    - 在欢迎界面中,如果需要进一步了解WebSphere Portal Express 6.1的相关信息并且电脑连接到了Internet,可以点击左侧的“资讯中心”链接访问更多的在线资源。 #### 2.3 进入安装界面 - 除了通过`Setup.exe`启动...

Global site tag (gtag.js) - Google Analytics