科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道探讨 IBM Lotus Workplace 2.0 的应用程序开发选项

探讨 IBM Lotus Workplace 2.0 的应用程序开发选项

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

了解使用 Lotus Workplace Products API Toolkit 的定制选项,该工具包为您提供 Lotus Workplace Messaging 和即时消息的公共 API 和 SPI、JSP 标签和 Collaborative Application Component Interfaces。

作者:www.ibm.com 来源:www.ibm.com 2007年9月13日

关键字: 技巧 程序 IBM lotus Office

  • 评论
  • 分享微博
  • 分享邮件

    在 2003 年末发布 Lotus Workplace 产品的 1.1 版本时,IBM 提供了 Lotus 众所周知的大多数协作功能,包括消息、Web 会议、即时消息、在线学习以及其他。可以对 Lotus Workplace 进行定制来满足组织的需要或满足用户的需要。通过 Lotus Workplace 产品的 2.0 版本,IBM 引入了 IBM Lotus Workplace Products API Toolkit,从而您可以进一步定制 Lotus Workplace。Lotus Workplace Products API Toolkit 代表了 Lotus Workplace 产品的重要发展。它允许创建组件和使用 JSP 标签,这些标签将协作添加到现有 J2EE 应用程序中。通过该工具包的帮助,您可以利用 Lotus 赖以成名的协作功能,以便构建基于标准的 J2EE 应用程序。

在本文中,我们探讨 Lotus Workplace 2.0 产品家族中开发人员可以使用的应用程序开发选项。Lotus Workplace Product API Toolkit 1.0 提供了对 Lotus Workplace 系统的扩展。Lotus Workplace 2.0 还引入了名为 Workplace Builder 的、创新的、基于 Web 的工具,可以使用该工具创建模板(本文后面有关于 Workplace Builder 和模板的详细信息)。本文适用于想要了解关于 Lotus Workplace 2.0 产品的开发功能详细信息的应用程序开发人员。读者如果具有 Java 编程经验和 WebSphere Portal 开发经验会有所帮助,但它不是必需的。

首先我们看一下 IBM Lotus Workplace 是什么。有一些参考资料已经详细说明了 Lotus Workplace 架构,但是在本文中,我们想概述一下基本架构,作为了解应用程序开发选项的基础。

IBM Lotus Workplace 概述

IBM Lotus Workplace 是集成的协作产品家族,包括 Lotus Workplace Messaging、Lotus Workplace Team Collaboration、Lotus Workplace Collaborative Learning 和 Lotus Workplace Documents。称为 IBM Workplace Client Technology 的服务器管理客户机为安全而动态的工作环境中的各种用户交付 Lotus Workplace Messaging 和 Lotus Workplace Documents 功能。

Lotus Workplace 使用基于标准的平台,在以 WebSphere Applications Server 为基础的组件堆栈上交付该平台。在基本的 WebSphere Applications Server 之上,由 WebSphere Portal 提供集成功能。Lotus Workplace 产品家族本质上是基础设施组件以及在 WebSphere Portal 上运行的用户交互 portlet 的组合。要了解关于 portlet 和 WebSphere Portal 的详细信息,请参阅本文后面的参考资料部分。

就应用程序开发选项的情况,Lotus Workplace 开发人员可以期望基础设施级别和用户界面的扩展。基础设施主要使用 EJB 构建;工具包的第一个版本已经涉及了该层。工具包的下一版本通过向开发人员提供对 Service 层的访问权,将与基础设施更加深入地集成。关于用户界面,工具包提供了两个 JSP 标签,以更进一步地集成到 Lotus Workplace 环境中。同时,有两个 Service Provider Interface (SPI),提供了对系统扩展的访问,如邮件和即时消息。

让我们快速看一下工具包第一个版本的四个主要部分。本文后面将对它们进行详细讨论。公共 API(Application Programming Interface)和 SPI(Service Provider Interface)的第一个版本包括:

  • IBM Lotus Workplace Mail Messaging SPI
    允许截取流入和流出系统的邮件消息。
  • IBM Lotus Workplace Instant Messaging SPI
    允许捕获系统中流动的即时消息。
  • 两个 JSP 标签
    允许向 JSP 添加提醒。
  • Collaborative Application Component Interface (CACI)
    允许构建自己的业务组件(下一节中详细说明)。





回页首


Lotus Workplace Products API Toolkit 1.0 简介

Lotus Workplace Products API Toolkit 是为那些想用新 portlet 或业务组件来扩展 Lotus Workplace 平台的开发人员而设计的。该工具包通过提供许多 Java 形式的公共 API 和 SPI 来达到此目的。Lotus Workplace 公共 API 还补充了底层 WebSphere Application Server 和 WebSphere Portal 平台所提供的公共 API(未包括在此工具包中)。有关这些底层平台的进一步信息,请参阅参考资料部分。

Lotus Workplace Products API Toolkit 的目标是允许您使用 J2EE 编程模型来构建业务组件、portlet 和其他组件。Lotus Workplace 业务组件可以认为是迷你应用程序。该组件提供一些业务功能,但不一定是完整的应用程序。例如,收件箱和地址簿就是业务组件的例子。但是将一些业务组件(例如收件箱和地址簿)与邮件基础设施组合就提供了一个邮件应用程序。

可以将 Lotus Workplace Products API Toolkit 与 J2EE 开发环境(如 WebSphere Studio Application Developer)一起使用。该工具包包含关于如何使用 WebSphere Studio Application Developer 来构建随该工具包提供的示例代码的文档。不久之后就会有教程,带您逐步查看这些示例。

让我更详细地看一下公共 API 和 SPI。SPI 在第一个版本中涉及了 Lotus Workplace Extension 服务,即邮件和即时消息扩展。

IBM Lotus Workplace Mail Messaging SPI

IBM Lotus Workplace Mail Messaging SPI 提供了对 Lotus Workplace Messaging 邮件服务的扩展。这些邮件服务扩展采取 Java 类的形式,符合称为处理程序和传递程序的两个特定接口之一。此 Java SPI 允许构建电子邮件消息处理程序,其在传递之前截取邮件消息,任意对这些消息进行重定向或修改消息内容。消息处理程序可以执行病毒扫描、有效内容过滤、垃圾邮件过滤或任何其他希望的过滤操作。随工具包提供的示例显示了如何构建简单的病毒扫描应用程序。

注意:示例显示了如何提取邮件消息,将其传递到病毒扫描应用程序,该应用程序不是本示例的一部分。

处理程序扩展可以检查通过邮件服务传递的任何消息的信封和内容。然后处理程序可以通过添加或删除数据来修改消息内容。它还可以拒绝邮件,从而不传递该邮件。传递程序扩展可以修改接收消息的文件夹。通过 Lotus Workplace Messaging 属性文件 workplace.properties 中的条目,可以使 Lotus Workplace Messaging 服务器知道所有处理程序和传递程序扩展。

随工具包提供的 Javadoc 中也对这些 Java 类以及邮件处理接口进行了描述。

IBM Lotus Workplace Instant Messaging SPI

IBM Lotus Workplace Instant Messaging SPI 用于构建即时消息处理程序,其在即时消息传递到收件人之前截取这些消息。可以使用此 Java SPI 在 Lotus Workplace Team Collaboration 2.0 中阻止或修改即时消息。此 SPI 最常用于聊天记录,但是还可以使用该 SPI 执行其他任务,如消息转换。可以部署应用程序将 SPI 用作 WebSperhere Portal 上的 servlet。随工具包提供的示例包含如何使用该 SPI 构建简单聊天记录的详细信息。

Instant Messaging SPI 是 Lotus Workplace Team Collaboration 2.0 的到场提醒和即时消息服务的一部分。通过 WebSphere Portal 上安装的 servlet 可以获得该 SPI,WebSphere Portal 是作为 Lotus Workplace 2.0 一部分的三个服务器之一。

Instant Messaging SPI 包括下列类:

  • MessagingListener
    该接口接收通过 Session Initiation Protocol (SIP) 服务器的每个消息的事件。
  • MessagingService
    该接口用于管理所有 MessagingListener 实例。
  • MessagingServiceFactory
    此类用于获得 MessagingService 对象的实例。
  • Contact
    该类表示 SIP 联系人。用于检查接收消息的联系人。





回页首


Lotus Workplace JSP 标签

与工具包提供的 API 和 SPI 一起,还有两个 Java Server Pages (JSP) 标签。这些 Lotus Workplace 标签是一种允许向 Lotus Workplace 的 portlet 添加协作功能的组件类型。对于工具包的这个版本,可以使用下列定制 JSP 标签。工具包包含的文档仅用于随 Lotus Workplace 提供的 JSP 标签。

Person 标签

该标签用于在应用程序中添加到场提醒。Person 标签提供与指定人员相关的情景协作功能。可以使用该标签生成协作操作的链接菜单,如发送电子邮件、开始聊天、显示 Person Record 等等。简单说来,就是它使您可以将作为纯文本的人员姓名变为“在线姓名”。将 Person 标签添加到表示人员姓名的静态文本后,客户可以单击链接获得更进一步的选项来与该人员通信。当然,为了使人员的姓名变为在线姓名,该人员必须使用某种客户机连接到 Instant Messaging 服务器。如果该人员是脱机的,则姓名显示为静态纯文本。该标签提供了简单而强大的功能。

图 1 显示了单击在线姓名时可以使用的通信选项。


图 1. Person 标签的可用通信选项
Person 标签的可用通信选项

WebSphere Portal 最初引入了 Person 标签,如果人员连接到 IBM Lotus Instant Messaging 和 Web Conferencing (Sametime) 服务器,就允许您在 WebSphere Portal 内添加在线姓名。与 Lotus Workplace 一起提供的 Person 标签能够连接到 Lotus Workplace 上提供的 Instant Messaging 服务器。管理员为了允许 IBM Lotus Instant Messaging 和 Web Conferencing (Sametime) 中的用户可以通过 Person 标签在 Lotus Workplace 中使用,管理员需要 Lotus Instant Messaging Gateway,它允许 Lotus Instant Messaging and Web Conferencing 和 Lotus Workplace 用户通过即时消息进行通信。

随工具包提供的文档重点阐述为了与 Lotus Workplace 2.0 一起使用而对此标签进行的特定更改。有关 Person 标签及其如何工作的更详细的信息,请参阅 IBM WebSphere Portal InfoCenter 中提供的文档。

Online Center 标签

Online Center 标签用于提供到场提醒。它已经内嵌到 Lotus Workplace 主题中的页面顶部,但是如果在弹出窗口中创建 portlet,需要此标签在该页面上提供到场提醒。如果不使用 Online Certer 标签,Person 标签不在弹出窗口中提供提醒。Person 标签可以检查用户是否登录到 Instant Messaging 服务器,但是不连接 Instant Messaging 服务器。Online Center 标签启动对 Instant Messaging 服务器的连接并在 CSEnvironment 对象中填充登录信息。(这些对象是 Collaborative Services 的一部分,Collaborative Services 是随 WebSphere Portal 中的 Person 标签的原始版本一起提供的。Person 标签主要检查用户的登录状态和 CSEnvironment 对象。从 Online Center 中可以更改在线状态:有空、离开和请勿打扰。使用这些 JSP 标签将人员和到场提醒合并到 portlet 中。

图 2 显示了在线状态选项的例子。


图 2. Online Center 标签的可用状态选项
Online Center 标签的可用状态选项




回页首


Collaborative Application Component Interfaces

Collaborative Application Component Interfaces (CACI) 允许构建与 Lotus Workplace 协作基础设施集成的业务组件。Lotus Workplace 使用这些 Java 接口与您的组件进行交互。在协作应用程序组件无状态会话 EJB 中实现这些接口。Lotus Workplace Products API Toolkit 包含业务组件示例和实现 Collaborative Application Component Interfaces 的协作应用程序组件 EJB。

Collaborative Application Component Interfaces 允许 Lotus Workplace 管理组件的以下方面:

  • Lifecycle
    当创建或破坏了包含的应用程序时,或者当从模板添加或删除了组件时,使用此项来通知组件。允许组件在应用程序运行时创建和破坏任何需要的资源。
  • Membership
    当在社区角色中添加或删除成员时,使用此项通知组件。允许组件授予或撤回对其所管理资源的成员访问权。
  • Templatable
    用于获取信息,从而允许组件用于应用程序模板中,包括用户创建包含组件的新应用程序时必须指定的参数。
  • Sensor
    用于获取组件管理的资源的信息,例如,磁盘空间使用。例如,此信息用于执行 Lotus Workplace 应用程序配额。
  • Transactional
    用于确定组件的 Lifecycle 和 Membership 方法是否支持全局事务。

对于构建 Lotus Workplace 应用程序组件,这些接口都不是必需的 — 仅使用所需要的接口。





回页首


Lotus Workplace Builder

IBM Lotus Workplace Team Collaboration 包括 Workplace Builder,一种应用程序组合工具,这种工具不是用于应用程序开发人员,而是用于业务分析员、应用程序管理人员和设计人员,也称为业务线用户。那些知道业务模型和过程的人可以使用 Workplace Builder 创建 Lotus Workplace 的协作组件和表单,而无需任何应用程序开发经验。

使用 Workplace Builder,业务线用户可以创建和管理 Lotus Workplace 应用程序和表单的模板。从这些模板,用户可以创建应用程序,而新的应用程序可以保存为模板,以便组件重新使用。Workplace Template Library 提供了多个随 Lotus Workplace Team Collaboation 一起提供的标准应用程序模板,包括论坛、聊天室、文档库等等。用户可以对标准模板进行定制来满足他们的需要或创建新模板。


图 3. Workplace Template Library
Workplace Template Library

Lotus Workplace 应用程序的表单查看器允许应用程序用户编辑和提交表单。Workplace Builder 提供以下组件:

  • Workplace Template Library
    显示 Template Editor(包括 Template Owner)可以查看和处理的模板列表(请参见图 3。)
  • Template editor
    显示用于维护 Lotus Workplace 应用程序的模板的 portlet 集合:属性、参数、页面和布局,以及角色。
  • Application editor
    显示用于维护特定 Lotus Workplace 应用程序的 portlet 集合:属性、页面和布局,以及角色。
  • Form Template Library
    显示 Lotus Workplace 管理人员可以查看和处理的表单模板的列表。

注意:Lotus Workplace 表单,包括 Form Template Library 和 Form Viewer portlet,都是作为 Lotus Workplace 2.0 版本中的技术预览提供的。

结束语

本文提供了 Lotus Workplace 2.0 产品家族的一些可用应用程序开发选项的介绍性信息。作者正在计划编写教程,这些教程将带您一步一步地了解作为 Lotus Workplace Products API Toolkit 1.0 一部分的 API 和 SPI。同时还在全世界的 IBM Innovation Centers 进行为期两天的现场研讨会,提供关于使用 Lotus Workplace 2.0 进行应用程序开发的进一步详细信息。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章