内容


基本步骤:转换 IBM Lotus Notes 应用程序以使用 Lotus Notes 8 Java 组件

Comments

本文以 Personal Journal 应用程序为例,描述如何将 Lotus Notes 应用程序转换成 Java 应用程序。可以应用这种技巧转换其他的 Lotus Notes 模板,使它们拥有 Lotus Notes 8 个人信息管理或 PIM(邮件、日程表、联系人)应用程序的感观。

本文的姊妹篇“高级 Java 视图特性”已经在 developerWorks® Lotus 上发表,它将列出更多的步骤,从而利用一些新的视图特性,例如主题(thread)、窄模式(narrow mode)、名片(business card)、分割操作(split action)按钮和定制的上下文菜单。

这些操作说明只适用于具有导航器(提纲)、列表视图和预览布局的简单应用程序。下面是一组预警说明:

  1. 视图中的多级分类可能无法正常工作。
  2. 多级分类视图中的总计(Total)列可能无法正常工作。
  3. 定制的 twistie 图标可能无法用于类别。
  4. 导航器无法在导航器面板中显示定制的动作。
  5. 导航器无法在导航器标题栏下拉菜单中显示定制的动作。

关于转换过程

要让 Lotus Notes 8 及更高版本的客户机在 Java 视图中呈现 Lotus Notes 应用程序,该应用程序必须是复合应用程序。因此,第一步是使用复合应用程序编辑器(CAE)创建一个复合应用程序。然后,在 Lotus Domino Designer 中修改模板,并使用 CAE 作进一步的更改。

本文以 Personal Journal 应用程序作为起点,因为它是一个简单的应用程序,具有导航器、列表视图和预览面板,而且它满足以上要求。

首先,确保安装了 Lotus Notes 8.5 客户机,并且其中包括 CAE 和 Lotus Domino Designer 8.5。另外还需要一个 16x16 PNG 文件,用作页面图标,该图标将在应用程序的选项卡中显示。

图 1 显示了转换之前的原始 Personal Journal 应用程序,图 2 显示完成本文列出的步骤之后的应用程序。

图 1. 作为传统 Lotus Notes 应用程序的 Personal Journal 应用程序 - 转换前
作为传统 Lotus Notes 应用程序的 Personal Journal 应用程序 - 转换前
作为传统 Lotus Notes 应用程序的 Personal Journal 应用程序 - 转换前
图 2. Java 视图中更新后的 Personal Journal 应用程序 - 转换后
Java 视图中更新后的 Personal Journal 应用程序
Java 视图中更新后的 Personal Journal 应用程序

从空白的 Personal Journal 应用程序开始

在 Lotus Notes client 中,遵循以下步骤:

  1. 基于 journal6.ntf 创建一个新的 Lotus Notes 应用程序。
  2. 确保已关闭 Inherit future design changes 选项。
  3. 打开新的应用程序。
  4. 右键单击选项卡,在 Lotus Domino Designer 中打开新的应用程序。

在 Lotus Domino Designer 中创建新的复合应用程序

在 Lotus Domino Designer 中遵循以下步骤:

  1. 在导航器中,单击 Composite Applications,然后单击 Applications。
  2. 在 Design 面板中单击 NewCompApp 按钮。
  3. 将新的应用程序文件命名为 Notes Journal Application.xml,并单击 OK,如图 3 所示。

    图 3. CAE:在 Lotus Domino Designer 中创建新的复合应用程序
    CAE:在 Lotus Domino Designer 中创建新的复合应用程序
    CAE:在 Lotus Domino Designer 中创建新的复合应用程序
  4. 在 Lotus Domino Designer 中选择 Framesets,双击 BorderFrame 进行编辑。如图 4 所示。
  5. 选择 File - Properties,然后从显示的列表中选择 Frameset。
  6. 将 Composite Application – App Name 设置为 Notes Journal Application.xml,作为应用程序的名称。
  7. 将 Composite Application – Page Name 设置为 Blank Page,作为页面名称。

    图 4. Lotus Domino Designer:修改 frameset
    Lotus Domino Designer:修改 frameset
    Lotus Domino Designer:修改 frameset
  8. 选择 File - Save。
  9. 选择 File - Exit。

基于邮件组件构建新的应用程序

复合应用程序框架使用 Lotus Notes 邮件组件(导航器和列表视图)构建复合应用程序页面。Lotus Notes 邮件组件已经进行了连接,以驱动列表视图和预览。然后,重新将邮件组件指定到原始 Journal 应用程序的 frameset。

在 Lotus Notes client 中遵循以下步骤:

  1. 打开 Lotus Notes client。
  2. 打开 Journal Example(之前创建的 NSF 文件)。
  3. 选择 Action - Edit Application,打开复合应用程序中的应用程序。
  4. 单击右箭头,打开组件面板。如图 5 所示。
图 5. CAE:编辑应用程序;打开组件面板
CAE:编辑应用程序;打开组件面板
CAE:编辑应用程序;打开组件面板

添加组件

现在,需要添加两个组件。

在复合应用程序编辑器中,遵循以下步骤:

  1. 从列表的 PIM 区中选择 Lotus Notes Mail View,将它拖放到中间的面板上。如图 6 所示。

    图 6. CAE:拖放邮件视图组件
    CAE:拖放邮件视图组件
    CAE:拖放邮件视图组件

    现在,窗口看上去如图 7 所示。

    图 7. CAE:拖入 Lotus Notes 邮件视图之后
    CAE:拖入 Lotus Notes 邮件视图之后
    CAE:拖入 Lotus Notes 邮件视图之后
  2. 前一步骤中所采取的动作可能使焦点回到 Lotus Notes 客户机工作区。如果是这样,在任务栏中单击 Lotus Notes 项,重新打开 Editing: Blank Application。可能还需要单击右箭头,以便重新打开组件面板。
  3. 现在,将 Lotus Notes mail navigator 组件拖到中间的面板中。这个步骤要注意技巧;必须将视图拖到面板的左边缘上。如图 8 所示,当看到左边缘上显示黑色箭头,并伴有狭长的外接矩形时,放下该组件。

    图 8. CAE:拖放 mail navigator
    CAE:拖放 mail navigator
    CAE:拖放 mail navigator

放下该导航器之后,应该看到如图 9 所示的屏幕。

图 9. CAE:拖到中间面板
CAE:拖到中间面板
CAE:拖到中间面板

从 Personal Journal 应用程序继承边框 frameset 设置

现在需要用 Personal Journal 中的元素替代邮件组件。这里需要让新的应用程序继承日志模板的边框 frameset 设置。

遵循以下步骤:

  1. 右键单击 Lotus Notes Mail Navigator 组件(在左面板中),选择 Edit Component Properties。
  2. 从 Display Settings 选项卡中,选择 Title Bar 以显示标题栏。
  3. 单击 Component Settings 选项卡。
  4. 选择字段 Lotus Notes URL。
  5. 用 0 替换 E;用 BorderFrame 替换 MailFS(notes:///0000000000000000/BorderFrame?OpenFrameset),使窗口看上去如图 10 所示。

    图 10. CAE:更新 Lotus Notes URL 字段
    CAE:更新 Lotus Notes URL 字段
    CAE:更新 Lotus Notes URL 字段
  6. 单击 OK 关闭窗口。
  7. 在左面板中右键单击 Lotus Notes mail view 组件,选择 Edit Component Properties。
  8. 单击 Component Settings 选项卡。
  9. 选择字段 Notes URL。
  10. 用 0 替换 E;用 BorderFrame 替换 MailFS:notes:///0000000000000000/BorderFrame?OpenFrameset。
  11. 单击 Advanced 选项卡。
  12. 选择 com.ibm.rcp.csiviews.viewpart.threadurl 并单击 Delete。
  13. 选择 com.ibm.rcp.csiviews.viewpart.folderalias 并单击 Delete。
  14. 单击 OK。
  15. 要保存到目前为止做出的更改,从 File 菜单中选择 Save 和 Close。

设置页面图标和重命名应用程序

在 Lotus Domino Designer 中遵循以下步骤:

  1. 这里需要一个 PNG(16 X 16)格式的图像。例如 notebook8.ntf 模板图像 tab_notebook_16.png。
  2. 打开 Lotus Domino Designer。
  3. 选择 Resources – Images。
  4. 单击 Import Image Resource,将该图像导入为新的图像资源。在 File name 中输入 *.png。如图 11 所示。

    图 11. Lotus Domino Designer:将页面图标添加到共享的 resources/image 目录中
    Lotus Domino Designer:将页面图标添加到共享的 resources/image 目录中
    Lotus Domino Designer:将页面图标添加到共享的 resources/image 目录中
    图 12. Lotus Domino Designer:设置 File name 字段以显示 PNG 文件
    Lotus Domino Designer:设置 File name 字段以显示 PNG 文件
    Lotus Domino Designer:设置 File name 字段以显示 PNG 文件
  5. 通过 Lotus Notes 客户机打开复合应用程序编辑器。
  6. 在导航器中右键单击 Blank Page,选择 Edit Page Properties 选项。
  7. 单击 Select 选择之前步骤中存储的图标。如图 13 所示。

    图 13. CAE:编辑页面图标
    CAE:编辑页面图标
    CAE:编辑页面图标
  8. 接下来,可以通过编辑 Page Title 来调整应用程序的名称。如图 14 所示。

    图 14. CAE:编辑 Page Title 字段
    CAE:编辑 Page Title 字段
    CAE:编辑 Page Title 字段
  9. 单击 OK。
  10. 从 File 菜单中选择 Save 和 Close。

    这时可以回到 Lotus Notes 客户机并打开应用程序。它看上去应该如图 15 所示。为了更新选项卡图标,可能需要重新启动 Lotus Notes。

    图 15. Lotus Notes:Lotus Notes 客户机中更新后的应用程序
    Lotus Notes:Lotus Notes 客户机中更新后的应用程序
    Lotus Notes:Lotus Notes 客户机中更新后的应用程序

为页面图标设置引用

这里需要为这个页面图标设置引用,以便可以将这个应用程序转移到另一台计算机(并正确解析页面图标引用),并且可以基于这个模板创建新的应用程序。

在 Lotus Domino Designer 中遵循以下步骤:

  1. 打开之前创建的 Applications - Notes Journal Application。
  2. 选择之前创建的 Notes Journal Application.xml 文件,并右键单击 Open。
  3. 单击 Source。
  4. 在文本中查找 <preference name=”com.ibm.portal.PageIcon”>。
  5. 将 base:value 值设为用于页面图标的 PNG 文件。这里必须像下面这样指定 PNG 文件:
    <preference name=”com.ibm.portal.PageIcon”>
    <base:value value=”Notebook_view16.png” xsi:type=”base:String”/>
    </preference>
  6. 保存文件并退出。

为工具栏创建 split-action 按钮

Lotus Notes 8 在工具栏中引入了 split-action 按钮。split-action 按钮使用户可以单击一次获得一个默认的动作,或者单击一个下拉列表获得一组选项。

split-action 按钮的一个例子可以从邮件应用程序的收件箱中看到。当单击一个 New 按钮时,会打开一个新的邮件文档。但是如果单击 New 按钮中的下拉箭头,则可以看到一组选择,如图 16 所示。

图 16. 新的 split-action 按钮
新的 split-action 按钮

要创建 split-action 按钮,需要进入到 Lotus Domino Designer 中。遵循以下步骤:

  1. 打开 Shared Action 属性窗口。
  2. 在 action 或 shared actions 属性窗口中,选择 Display as Split Action 属性。如图 17 所示。

    图 17. 创建 split-action 按钮
    创建 split-action 按钮
    创建 split-action 按钮

设置 bookmark 类型

默认情况下,当从 application 选项卡中为应用程序设置书签时,复合应用程序 XML 设置会导致 Lotus Notes 创建 Notes Remote Procedure Call(NRPC)URL。这些 URL 比较慢,而且当应用程序不复存在时会产生错误。因此,明智的做法是将 Notes URL 用于书签。这个步骤还可以确保使用数据库图标作为书签图标。

要切换到 Notes URL,需要将一个首选项添加到复合应用程序 XML 中。可以通过打开复合应用程序编辑器(通过选择 Actions - Edit Application),然后从页面元素中选择 Edit Page Properties 来添加该首选项。如图 18 所示。

图 18. 在复合应用程序编辑器中编辑页面属性
在复合应用程序编辑器中编辑页面属性

然后,在 Edit Page Properties 窗口中,切换到 Advanced 并单击 Add 以添加首选项 com.ibm.rcp.bookmark_level,将值设为 selection。如图 19 所示。

图 19. 添加 Bookmark_level 首选项
添加 Bookmark_level 首选项
添加 Bookmark_level 首选项

关闭导航器切换程序

默认情况下,导航器的标题栏显示 Switch to Calendar 切换程序。可以使用另一个复合应用程序 XML 首选项禁用这个切换程序。

图 20. Calendar/To Do 切换程序
Calendar/To Do 切换程序

遵循以下步骤:

  1. 启动复合应用程序编辑器(选择 Actions - Edit Application),右键单击鼠标以编辑导航器的 component 属性。
  2. 当 component 属性窗口显示时,单击 Advanced 选项卡。单击 Add,添加首选项 com.ibm.rcp.showSwitch,将值设为 false。保存并关闭。如图 21 所示。

    图 21. 添加 show switcher 首选项
    添加 show switcher 首选项
    添加 show switcher 首选项

结束语

本文概述用于定制应用程序和使应用程序现代化的各个步骤。现在,您应该可以使用很多工具使定制的应用程序看上去类似 Lotus Notes 8 本地 PIM 应用程序(Mail、Calendar、Contacts、To Dos 和 Notebook)。要获得更多信息,请参阅 Lotus Notes composite application editor 帮助和 Domino Designer 8.5 帮助。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Lotus, Java technology
ArticleID=374688
ArticleTitle=基本步骤:转换 IBM Lotus Notes 应用程序以使用 Lotus Notes 8 Java 组件
publish-date=03092009