基于 Eclipse 的 IBM Lotus Notes V8 增强了 Lotus Notes 用户界面,强化了协作和消息传递功能,并使用最先进的编程结构扩展了应用程序开发模型。请参阅有关 Lotus Notes/Domino V8 中新特性的更多内容。
应用程序开发中的新特性
IBM Lotus Notes 和 Domino 所作的更改越多,就越趋于一致。IBM Version 8 中对最重要的协作和消息传递产品所作的更改可以说是超过了最近任何 Lotus Notes/Domino 版本中所作的更改。增强了 Lotus Notes 客户机并结合使用了 IBM Lotus Expeditor 平台技术。这意味着 Lotus Notes 发生了较大的更改。不过它们是开放式更改,而不是封闭式更改。
可以采用新方式来看待事物,并且存在新的可能性。全新的编程结构是最大的卖点:增强了对 Web 服务的支持以及提供了用于复合应用程序的新开发工具,这些工具可以从任何实际位置收集数据和业务逻辑。
Lotus Notes 和 Domino V8 还提供了利用技术和改进的新工作方式。新的用户界面以一种熟悉的 Lotus Notes 客户机格式展示了时尚的、经过用户测试的界面形象。用户界面表示了您所需要的工具 —— 日历、RSS 提要等 —— 而且是在您需要这些工具的时候进行表示。Lotus Notes 和 Domoino V8 还增强了电子邮件、日历和联系人以帮助提高效率。
转换到 Eclipse 带来了益处,而没有引起任何损失。Lotus Notes 并没有为容纳新特性而放弃任何功能。Lotus Notes V8 完全是 Lotus Notes。V8 之前版本中运行的任何应用程序仍可以运行。用户界面的增强以及其他特性(如产品编辑器)使 Lotus Notes 在台式机上比以往更受欢迎。并且新的编程特性(例如 Composite Application Editor 和 IBM Lotus Component Designer)将 Lotus Notes 开发人员的知识和技能扩展到了新领域 —— 既是数据使用方又是数据提供方的应用程序,以他们以前无法使用的方式来使用企业中的其他信息系统,平台所承担的操作台远远超过移动设备所能承担的操作台。
Lotus Notes 客户机、Lotus Expeditor 和 Eclipse
Lotus Notes V8 的最大卖点是 Notes V8 客户机在 Eclipse 环境中封装了所有 Lotus Notes 代码。这种行为将 Lotus Notes 放置在开源的基于 Java 的平台上。最初是作为集成的应用程序开发环境进行创建的,其开放的、基于插件的架构使 Eclipse 本身成为富客户机平台开发的基础。Lotus Notes V8 是在 IBM 的通用托管客户机软件 Lotus Expeditor 上构建的,而后者反过来是在 Eclipse 上构建的。
作为集成开发环境(integrated development environment,IDE)的 Eclipse 提供了模板驱动设计和基于 CSS 的外观定制。Eclipse 工作空间包含了封装 Java 代码和配置文件的插件,配置文件包含了关于插件的信息:plugin.xml 文件描述了扩展名和扩展点,manifest.mf 文件描述了插件的 ID、名称、依赖项、启动过程、版本以及可用于其他插件的类。作为 IDE 的 Eclipse 拥有插件集。从效果上讲 Lotus Notes V8 是带有不同插件集的 Eclipse。
作为富客户机,Lotus Notes V8 从 Lotus Expeditor 继承了大量行为,后者是由 IBM 创建的具有强大可管理性特性的通用富客户机。Lotus Expeditor 还是 IBM Lotus Sametime V7.5 和 IBM Lotus Component Designer 的基础,是用于创建由 IBM WebSphere Portal 提供给 Web 浏览器的复合应用程序的开发工具。
(作为面向服务架构(Service-Oriented Architecture,SOA)和复合应用程序的托管客户机,Lotus Expeditor 在 IBM 的富客户机家族中占有一席之地。作为 IBM WebSphere Everyplace Deployment 的继任者,Lotus Expeditor 将 Lotus Notes、WebSphere 和 Eclipse 基础设施扩展到了各种企业桌面和移动设备上的托管客户机环境。)
Lotus Notes/Domino V8 应用程序开发中最大的更改是大大增强了对 Web 服务和 SOA 的支持。该更改需要两个窗体。其中一个增加了对 Web 服务的支持,另一个是新的编程结构,即复合应用程序,利用 Eclipse 平台对开放、标准方式的支持,在 Lotus Notes V8 客户机(而不是 portal)中连接应用程序组件。
复合应用程序将多个系统的不同类型的内容组件集中起来,可以在用户界面层上将内容组件连接在一起,而无需通过编程使用户采用新方式访问信息。复合应用程序与 Portal 应用程序的工作方式相同,并且使用与 Web 服务和面向服务架构相同的开发架构。
现有的或新 Lotus Notes 应用程序可以作为组件重复使用,同使用 Lotus Component Designer 开发的应用程序一样。也可以将 Eclipse 组件(例如嵌入浏览器或产品编辑器)作为复合应用程序中的组件使用。要了解有关这个主题的更多信息,请阅读 developerWorks Lotus 教程 “Creating a composite application using IBM Lotus Component Designer”。
Lotus Notes V8 复合应用程序中的每个组件都封装了其自身的用户界面、业务逻辑和存储库(例如 NSF 或关系型数据文件),并且可以使用多种工具来创建组件,工具的种类繁多,从非编程方式的向导到脚本工具(例如 IBM Lotus Domino Designer V8 和 Lotus Component Designer),直到复杂工具(例如 Java IDE、Lotus Expeditor 工具包和 IBM Rational Application Developer for WebSphere Software)。
Lotus Notes V8 复合应用程序的开发模型与 IBM WebSphere Portal 应用程序的开发模型相似(参见图 1),不过其中 Web 浏览器必须连接到 WebSphere Portal,利用其 Eclipse/Lotus Expeditor 基础,Lotus Notes V8 可以使用复合应用程序并支持单机基础上的复合应用程序之间的交互。
图 1. Lotus Notes/Domino V8 的系统图
Web 浏览器可以仅通过 WebSphere Portal 来使用复合应用程序,但是 Lotus Notes V8 包含了使用复合应用程序时所需的全部功能。
图 1 表明了另一种对比:使用 Application Template Editor 来完成 WebSphere Portal 应用程序的集中和连接,而在 Lotus Notes V8 中,使用的是 Composite Application Editor,它是作为 Lotus Notes 插件进行安装的。Composite Application Editor 可以为 Lotus Notes 和 WebSphere Portal 创建在线工作的复合应用程序,而且可以创建脱机工作的基于 NSF 的复合应用程序。
复合应用程序取决于属性代理(属性代理用于公开属性)或键入的可交换数据项。在复合应用程序中,操作是使用属性的逻辑,而连接组件的过程则将一个组件中的属性与另一个组件中的操作连接起来,从而指定组件之间的交互。
(有关属性代理概念的更详细说明,请参阅 developerWorks Lotus 文章 “为 IBM Lotus Expeditor Property Broker 创建协作组件。”)
Lotus Domino Designer V8 中的复合应用程序
复合应用程序需要对 Notes 编程模型进行一些扩展。如果 NSF 组件要与其他组件加入因果关系,则必须定义一个属性和操作接口。此信息保存在新的复合应用程序设计元素的子元素中(参见图 2):
- Properties(以 WSDL “Web Services Description Language” 的 XML 格式)定义了属性和操作定义。
定义基于 NSF 的复合应用程序后,NSF 就拥有新复合应用程序设计元素的另外的子元素(参见图 2):
- Applications 定义了组件页面之间的布局和导航以及组件间的通信。
图 2. Composite Applications 元素是 Lotus Domino Designer V8 中的新元素
Action and Column 属性框中还有新的 Composite Settings 属性(参见图 3)。
图 3. 新的 Composite Settings 将 Lotus Notes 应用程序配置为复合应用程序中的组件
对新复合应用程序的支持还包括新的使用 LotusScript 语言的 NotesProperty 类和 NotesPropertyBroker 类。
Lotus Notes V7.0 中引入了 Web 服务设计元素,允许在 Lotus Domino 服务器上创建 Web 服务。这是提供方,即可以从其他计算机调用的 Web 服务。Lotus Notes V8 允许创建在 Lotus Domino 服务器上运行的 Web 服务使用方,并调用 Web 服务来获取服务所提供的数据,然后将数据插入到 Lotus Notes 应用程序中。
这个 Web 服务使用方不是作为 Web 服务设计元素进行实例化的,而是作为由代理或其他代码使用的特殊类型的 Script Library(使用 LotusScript 或 Java 语言)进行实例化。该库的内容是一个 WSDL 文档,即采用 XML 格式的 Web 服务描述。进行保存时,将 WSDL 导入该库并编译成脚本。在(调用 Web 服务的)脚本的 [Declarations] 部分中,将按名称引用脚本库。
在 Lotus Notes V8 中,Web 服务使用方是作为特殊的脚本库进行创建的。Lotus Domino Designer 中的新操作允许检查或导出 WSDL(WSDL 是脚本库的内容)(参见图 4)。
图 4. 新元素 Script Library 将保存定义了 Web 服务使用方的 WSDL
网友评论