基于 Eclipse 的 IBM Lotus Notes V8 增强了 Lotus Notes 用户界面,强化了协作和消息传递功能,并使用最先进的编程结构扩展了应用程序开发模型。请参阅有关 Lotus Notes/Domino V8 中新特性的更多内容。
[编辑注:本文所讨论的 Lotus Notes 8 特性和更新反映的是预览版软件,该软件尚未公开发行。本文及其中的屏幕截图可能(也可能不)反映最终产品的功能。]
IBM Lotus Notes 和 Domino 所作的更改越多,就越趋于一致。IBM Version 8 中对最重要的协作和消息传递产品所作的更改可以说是超过了最近任何 Lotus Notes/Domino 版本中所作的更改。完全重写了 Lotus Notes 客户机以便在 IBM Lotus Expeditor 平台上运行。这意味着 Lotus Notes 发生了较大的更改。不过它们是开放式更改,而不是封闭式更改。
可以采用新方式来看待事物,并且存在新的可能性。全新的编程结构是最大的卖点:增强了对 Web 服务的支持以及提供了用于复合应用程序的新开发工具,这些工具可以从任何实际位置收集数据和业务逻辑。还对 Lotus Notes 客户机的用户界面进行了增强。
转换到 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 组件(例如嵌入浏览器或产品编辑器)作为复合应用程序中的组件使用。
Lotus Notes V8 复合应用程序中的每个组件都封装了其自身的用户界面、业务逻辑和存储库(例如 NSF 或关系型数据文件),并且可以使用多种工具来创建组件,工具的种类繁多,从非编程方式的向导到脚本工具(例如 IBM Lotus Domino Designer V8 和 Lotus Component Designer),直到复杂工具(例如 Java IDE、Lotus Expeditor 工具包 和 IBM Rational Software Architect)。
Lotus Notes V8 复合应用程序的开发模型与 IBM WebSphere Portal 应用程序的开发模型相似(参见图 1),不过其中 Web 浏览器必须连接到 WebSphere Portal,利用其 Eclipse/Lotus Expeditor 基础,Lotus Notes V8 可以使用复合应用程序并支持单机基础上的复合应用程序之间的交互。
图 1. Lotus Notes/Domino V8 的系统图
![Lotus Notes/Domino V8 的系统图](https://i-blog.csdnimg.cn/blog_migrate/d57b9ec9171ce70bdbd73f78fb7fbaa8.png)
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 文章 “ Creating collaborative components for IBM Lotus Expeditor Property Broker。”)Lotus Domino Designer V8 中的复合应用程序
复合应用程序需要对 Notes 编程模型进行一些扩展。使 NSF 成为组件的属性和操作定义位于全新的 Composite Applications 设计元素的两个子元素中(参阅图 2):- Properties(以 WSDL (Web Services Description Language) 的 XML 格式)定义了属性和操作定义。
- Applications 定义了组件页面之间的布局和导航以及组件间的通信。
图 2. Composite Applications 元素是 Lotus Domino Designer V8 中的新元素
![Composite Applications 元素是 IBM Lotus Domino Designer V8 中的新元素](https://i-blog.csdnimg.cn/blog_migrate/c5dde68e0fe916749babc13f9689eefc.png)
Action and Column 属性框中还有新的 Composite Settings 属性(参见图 3)。
图 3. 新的 Composite Settings 将 Lotus Notes 应用程序配置为复合应用程序中的组件
![新的 Composite Settings 将 Lotus Notes 应用程序配置为复合应用程序中的组件](https://i-blog.csdnimg.cn/blog_migrate/947a12482c71b3ee39152e2bd7af8def.png)
对新复合应用程序的支持还包括新的使用 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
![新元素 Script Library 将保存定义了 Web 服务使用方的 WSDL](https://i-blog.csdnimg.cn/blog_migrate/9e3ac3c58f21b0da248963261f972a51.png)
![]() ![]() |
![]()
|
Lotus Notes V8 中的很多增强和改进是迁移到 Eclipse/Lotus Expeditor 环境中的结果。可以按照扩展 Eclipse 自身的方式来扩展 Lotus Notes V8。使用 Eclipse 平台将自动创建 IBM 为平台开发的其他资源的访问,例如文档、电子表格以及与 Lotus Notes V8 一起提供的描述编辑器。
Eclipse 用户界面的灵活性还有助于对 Notes 用户界面进行详细修改:Sideshelf 显示了 “永远开放(always on)” 应用程序,如 Activity Manager、每日一瞥(day-at-a-glance)日历、即时消息传递和新的 RSS 提要阅读器。
通用改进包括改进的 MIME 渲染、内联的拼写检查、多级取消操作、日历空闲时间查找和选择改进:当突出显示并选中视图中的条目或文档中的文本时,现在可以采用按下 SHIFT 单击鼠标和按下 CTRL 单击鼠标。
三个 PIM 应用程序 —— Mail、Calendar 和 Contacts —— 都得到了用户界面翻新和主要的功能增强,而且很多更改利用了 Eclipse 功能,从而用作基于 NSF 的复合应用程序。例如,Contacts 中的 Business Card 视图使用了 Eclipse viewpart 结构,该结构从底层的 Notes 视图读取数据并以更图形化的格式显示数据,包括照片可用时的联系人缩略图。
使用 navigator 对 Mail 收件箱的用户界面进行了详尽的重新设计,添加了新的俯视图布局,新布局横跨两行分离消息信息并且在垂直方向上重新定位预览窗格;参见图 5。
图 5. Mail 收件箱
![Mail 收件箱](https://i-blog.csdnimg.cn/blog_migrate/714931626ed1dcbb1cf5fa1c6c903d03.png)
Mail 应用程序合并了对话特性,即基于 Message-ID 和 In-Reply-To 的 Internet message header 字段内容对消息线程进行分组,Lotus Domino 将其转化为 Lotus Notes 响应层次结构中的父条目和子条目。
在图 6 所示的邮件线程示例中,通过旋转 twistie 来展开标记为 Re: THREAD 1 的对话(它包含四条消息)以展示消息。该特性使用了 Notes 响应层次结构。
图 6. 展示折叠和展开的邮件线程
![展示折叠和展开的邮件线程](https://i-blog.csdnimg.cn/blog_migrate/3bdf6152ead3ca6ffa0e16804355c269.png)
Lotus Notes V8 中全新的消息取消特性允许用户取消发送消息、从收件人的收件箱中删除消息(依据管理设置)。还升级了 Out-of-Office 通知;请参阅 “Lotus Domino V8 服务器中的新特性” 部分。
当用户发送电子邮件或使用即时消息传递时,Recent Collaborations 特性将跟踪用户的 2000 个最新联系人;新特性使用上述列表中的匹配内容在 Mail、Calendar 和 Contacts 窗体的字段中进行预输入。
在 Lotus Notes V8 中可以委托 Access to Contacts,就像可以委托对 Calendar 的访问,因此更易于共享联系人。Shared Contacts 是新 Contacts 导航器上的一个选项。在 Lotus Notes V8 中联系人是用 Mail 应用程序进行复制的,因此 IBM Lotus Domino Web Access 用户拥有真正的副本,而不是用户移动设备的基于代理的同步。
还重新设计了 Calendar 应用程序。改进了可视化设计,Calendar 窗体更加整洁,并且为 Calendar 视图添加了一个导航器,包括组日历和委托日历。参见图 7。
图 7. Lotus Notes V8 Calendar 应用程序
![Lotus Notes V8 Calendar 应用程序](https://i-blog.csdnimg.cn/blog_migrate/194c26e097ad42fa68652656d5af010e.png)
改进了 Scheduler 的用户界面,新的 Event Announcement 特性便于使用标准会议创建特性邀请大型组加入事件,而无需创建大量用于管理的响应。
空闲时间查找引入了新用户界面,用于寻找会议的适宜时间。它允许选择参加人员列表,然后返回一个表,其中绿色的列指明了第一个可用的会议时间。还允许制定 “如果...将会怎样(What if)” 计划,通过取消选中和重新选择参加人员来改变会议时间。
对于收件箱中未经处理的通知,将在 Calendar 中自动创建已镜像的日历条目。该特性将取代 Calendar 中的通知,用于未被接受的邀请、重新排定的事件和委托通知。
产品编辑器是用于创建和编辑文档、电子表格和描述的应用程序。在 Eclipse 中,它们是作为 IBM 对 Open Document 项目的支持的一部分实现的,并且首次随 IBM Workplace Managed Client 发布。它们包含在标准的 Lotus Notes V8 许可证中。
产品编辑器是 Microsoft Office 及类似产品的颇具吸引力的替代产品,因为它们与 Lotus Notes 紧密集成。在 Lotus Notes 中可以从 Open 菜单打开该编辑器,也可以在应用程序中以编程方式打开编辑器。而且它们的图标将出现在计算机桌面及 Start 菜单中,因此产品编辑器的使用可以独立于 Lotus Notes。
有三个编辑器可处理文档、电子表格和描述。它们引入了新界面,以基于 Eclipse 的应用程序为特点(参见图 8),并且支持很多种文件格式。默认的文件格式与 OpenOffice 2.0 及基于此开源代码的其他产品所使用的 ODF 格式相同。它们从 Microsoft Office 97/XP/2000、Microsoft Office 2003 XML 和 Microsoft Rich Text Format 读写 DOC、XLS 及 PPT 文件格式。通过导入 Lotus Word Pro、Lotus 1-2-3 和 Lotus Freelance Graphics 文件,它们还支持来自 Lotus SmartSuite 的迁移。编辑器还可以 Adobe Acrobat (PDF) 格式导出文档。
图 8. IBM Document Editor 是三个与 Lotus Notes V8 绑定的基于 Eclipse 的编辑器之一
![IBM Document Editor 是三个与 Lotus Notes V8 绑定的基于 Eclipse 的编辑器之一](https://i-blog.csdnimg.cn/blog_migrate/bfdbc68662d0599804e03b76bf1cb0bd.png)
因为产品编辑器是 Eclipse 插件,所以可以通过 Lotus Domino V8 配置信息提供过程自动部署并升级编辑器。(也可以从光盘安装编辑器。)
![]() ![]() |
![]()
|
尽管版本 8 的中心是 Lotus Notes 客户机,但无论如何都不会忽视 Lotus Domino 服务器。关于 Lotus Domino 的进一步增强的说明表明短期内将进行更多改进。
Lotus Domino 中的很多更改都支持 Lotus Notes 客户机的更改:例如消息取消、改进的 out-of-office 通知以及邮件线程。对应用程序开发所作更改的支持包括将复合应用程序部署到 Lotus Notes V8 客户机,以及使 Lotus Domino 既是 Web 服务使用方又是提供方的功能。
其他更改集中在管理控件上:客户机配置信息提供控件,用于管理向 Lotus Notes V8 客户机部署新组件(并用于补充 Lotus Notes Smart Upgrade,它支持从 Lotus Notes V6.x 和 V7.x 升级到 Lotus Notes V8)。新的策略控件将管理新编辑器和操作,它们既是 Lotus Notes 的一部分,也是新 IBM Lotus Connections 应用程序的一部分。新策略将协助控制收件箱清除并管理收件箱大小。
服务器管理和性能也得到了极大重视。IBM Lotus Domino Domain Monitoring 有所改进,包括附加的事件探测和纠正操作、与 IBM Tivoli Enterprise Console 集成以及改进的 AdminP 性能(用于提高重命名速度)。Lotus Domino 内部的增强包括新的集群复制(这大大改进了性能并减少了 I/O 要求和等待时间)及排序特性 “第一次使用时进行构建(Build on first use)”。
新的 Database Redirection 函数将自动修复指向已移动或已删除的应用程序的无效链接。默认情况下将创建重定向标记,并且新工具(参见图 9)允许管理员手动创建或修改重定向。当 Lotus Notes 客户机访问重定向标记时,如果文件已被移动,则引用将被取代;如果文件已被删除,则引用将被删除。(数据库重定向仅由 Lotus Notes V8 客户机使用,而不被服务器使用。)该工具允许管理员将引用指定给特殊用户或组,使重定向基于角色。
图 9. Database Redirection 工具
![Database Redirection 工具](https://i-blog.csdnimg.cn/blog_migrate/1db0037d514e2a8270a1403cf7711e7b.png)
Lotus Domino V8 中的安全性改进添加了对 On-line Certificate Status Protocol (OCSP) 的支持,涵盖了用于电子邮件的 X.509 证书并包括类似证书撤销的功能。Directory Lint 是一个新的管理工具,用于检查目录完整性并推荐改进措施。
最后,Lotus Domino 作为 Web 服务器的重要性反映在 Internet 安全性的改进上:在 Lotus Domino V8 中,管理员可以阻止访问 Lotus Domino Directory 中的 Internet 密码字段。还有一个全新的 Internet 帐号封锁特性:Lotus Domino 可以对进行尝试的 HTTP 访问执行 “三振出局(three strikes and you're out)” 规则,然后可以封锁用户帐号和密码。被封锁的帐号被记录在每个服务器的专用 NSF 文件中,通过删除封锁记录可以恢复帐号 —— 而且,的确可以为(挑战登录的)问题用户创建专用规则。
消息取消允许用户检索他们偶然或不适当地发送给错误收件人的 Lotus Notes 邮件。从 Lotus Notes 中的 Sent Mail 文件夹或 All Documents 视图中激活消息取消,该特性允许用户检索一个或所有收件人的消息;参见图 10。消息取消特性将从收件人的邮箱中删除消息,并且如果消息已被打开,将通知某人消息被取消。管理员将配置消息取消特性,而且他们可以设置基于策略的控件(基于这些控件用户可以取消消息)以及收件人是否可以阻止取消请求。
图 10. 消息取消特性
![消息取消特性](https://i-blog.csdnimg.cn/blog_migrate/90747af122c480bbd9e8eaecdc3affd3.png)
在 Lotus Notes/Domino V8 中,Out of Office 代理已经由构建在路由器中的 Domino 服务取代。这个更改将消除 out-of-office 通知传递中的等待时间和延迟,而且不需要仅仅为了使用 Out of Office 通知而授予用户运行代理的权利。
新的 Out of Office 服务需要 Lotus Domino V8 服务器、Lotus Notes V8 客户机以及 Lotus Notes V8 邮件模板。Lotus Notes V8 中新版的 Out of Office 代理支持很多相同的特性,并且服务和代理可以在同一个环境中运行。他们共享相同的新用户界面(参见图 11)。Out of Office 代理的执行不需要任何新特性,因此可以在 Lotus Domino V8 或更早的服务器版本上运行。
图 11. Out of Office 用户界面
![Out of Office 用户界面](https://i-blog.csdnimg.cn/blog_migrate/896f012380a0cac66945b798006eaa98.png)
有关新的 Out of Office 服务的更多信息,请参阅 developerWorks Lotus 文章 “IBM Lotus Notes V8 中全新的 Out of Office 功能。”
![]() ![]() |
![]()
|
Lotus Notes/Domino V8 的发布是 IBM 开始于 2002 年的拥抱标准计算过程的结果。基于 Eclipse 的 Lotus Notes V8 增强了 Lotus Notes 用户界面,加强了 Lotus Notes 的协作和消息传递能力,并使用最先进的编程结构扩展了 Lotus Notes 应用程序开发模型,包括对 Web 服务和 SOA 的更全面的支持以及新的复合应用程序和 Eclipse/Lotus Expeditor 组件。尽管进行了这些更改,IBM Lotus Notes V8 仍与已安装的 Lotus Notes 应用程序基础兼容,而且值得注意的是,它仍将 Lotus Domino Designer 作为开发这些新应用程序的主要工具。