![]() ![]() |
将插件部署到 Lotus Notes V8 客户机
下一步是将新建插件与特性和更新站点进行打包,从而将新建插件部署到客户机。Eclipse 将插件(或包)打包到 Eclipse 特性中。感谢 Eclipse 贡献者为上述操作提供了一些非常易于使用的向导。首先,创建一个引用新插件的特性。像前面所进行的操作那样创建新项目,只不过这次选择 Feature Project,如图 8 所示。
图 8. New Feature 向导

为了简单起见,新特性使用与插件名称一样的名称,只不过在末端包含单词 feature,例如 com.ibm.notes.mail.utils.feature。在下一个窗口中,从列表中选择插件并做好准备。如果创建了一些插件,则选择要包含在该特性中的插件。稍后您可以经常添加更多插件。
现在需要一个 Eclipse 更新站点,以便客户机安装新特性。在相同的 New Project 向导对话框(如图 8 所示)中,选择 Update Site Project。创建了更新站点之后,将特性添加到站点。site.xml 是很基础的,如清单 3 所示。
清单 3. 更新 site.xml
<?xml version="1.0" encoding="UTF-8"?> <site> <feature url="features/com.ibm.notes.mail.utils.feature_1.0.0.jar" id="com.ibm.notes.mail.utils.feature" version="1.0.0"/> </site> |
单击 Build All 按钮之前,清理所有项目并重新构建二进制文件是个不错的主意。从 File 菜单选择 Project - Clean。单击 Build All 按钮,站点已为部署做好准备。站点的 build 操作将生成一个特性和插件目录,该目录是存放已编译特性和插件的地方。现在已经拥有了插件、特性和 Eclipse 更新站点,那么惟一要做的事情就是在 Lotus Notes V8 用户界面中启动特性安装。
![]() ![]() |
运行新的改进产品
到 Lotus Notes V8 Beta 为止,客户机尚没有用于安装新特性的 Eclipse 菜单选项。只要管理员没有禁用该偏好,就可以通过编辑 <notes directory>/framework/rcp 目录中的 plugin_customization.ini 来打开该选项。
将以下一行代码添加到 <notes directory>/framework/rcp/plugin_customization.ini 文件:
com.ibm.notes.branding/enable.update.ui=true重新启动 Notes 客户机后,将看到新的菜单选项:File - Application - Install。这是用于安装特性的标准 Eclipse 接口。在向导的第一个窗口中,选择第二个选项(“Search for new features to install”)。单击 Next,将看到一个为刚刚创建的 Eclipse 更新站点指定位置的窗口。单击 Add Folder Location 按钮,然后导航到先前创建的包含 site.xml 文件的目录。窗口看起来与图 9 相似。
图 9. 安装 Feature

单击 Finish 并接受其余提示。将询问您是否希望安装插件,即使插件是未被签名的。出现这种情形是因为 Lotus Notes 有一个签名验证,在安装外来插件时将进行检查。由于您没有对插件进行签名,所以它们没有签名。一旦安装了新特性,就会要求您重新启动 Lotus Notes。重新启动之后,新按钮将出现在所有邮件视图中。
此外,为 Lotus Notes V8 用户提供了基于 NSF 的更新站点。可以简单地将本文 下载 部分所示的 NSF 文件复制到 Lotus Notes 数据目录。打开数据库时,将看到要安装在标准 Eclipse 过程对话框中的 Mail Tools 特性。完成安装之后,重新启动 Lotus Notes 就可以使用操作。
![]() ![]() |
结束语
本文演示了如何使用 Eclipse 扩展 Lotus Notes 客户机。您使用基本 Eclipse SWT 用户界面部件创建了完全跨平台的问题解决方案。使用该方法意味着您编写的代码与 Lotus Notes NSF 和 NTF 分离,即代码可以安全升级到 Lotus Notes V8。最后,展示了如何在新插件模型中使用现有的 Domino Java API 技能。通过使用 Java 后端 API,可以轻松连接到 Lotus Notes/Domino 架构。本文利用 Eclipse 框架的灵活性和可靠的 Lotus Notes 应用程序,展示了如何使用定制代码和插件便捷地进行扩展。(责任编辑:A6)