本文へジャンプ

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む


お客様が developerWorks に初めてサインインすると、プロフィールが作成されます。プロフィールで選択した情報は公開されますが、いつでもその情報を編集できます。お客様の姓名(非表示設定にしていない限り)とディスプレイ・ネームは、投稿するコンテンツと一緒に表示されます。

送信されたすべての情報は安全です。

  • 閉じる [x]

developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む


送信されたすべての情報は安全です。

  • 閉じる [x]

Lotus NotesアプリケーションのLotus Notes 8のJavaコンポーネントへの変換

Steve Castledine, Advisory Software Engineer, IBM
Steve Castledine is an Advisory Software Engineer with IBM. He is part of the Software Group, and currently responsible for growing the open source effort on OpenNTF.Org and demonstrating the value of Lotus Domino XPages. Previously Steve worked on projects to deliver Blog, Wiki, Notebook/Personal Journal and other PIM applications. You can reach Steve at steve.castledine@uk.ibm.com.
Margo Ezekiel, User Interface Designer, IBM
Margo Ezekiel is a User Interface Designer, working on the IBM Lotus Notes and iNotes Mail clients. She designed the Lotus Notes 8.0 Mail Client, using the Java view features outlined in this document. She worked with Steve Castledine to update the Personal Journal (aka Notebook) application in Lotus Notes 8.5.

概要: Lotus® Notes® client in release 8.0ではJava™ビューが新たに取り入れられました。このJavaビューを使った新機能が、8では多く追加されており、Lotus Notesのユーザー・インターフェースが「今風」になっています。この記事では開発者を対象に、既存のLotus DominoのシンプルなアプリケーションをJavaビューに変換する方法を、ステップバイステップで解説します。前提として、Lotus Notes 8.5、Lotus Domino 8.5、Lotus Notes Composite Application Editor 8.5 (Lotus Notes 8.5のインストールオプション)がインストールされていること、また、Lotus Domino Designerに慣れている必要があります。

日付:  2009年 2月 10日
レベル:  中級 この記事の原文:  英語
アクティビティー: 2860 ビュー
お気軽にご意見・ご感想をお寄せください: 


この記事では、Lotus Notes/DominoアプリケーションをJavaアプリケーションに変換する方法を記載しています。実際例として、個人ジャーナルアプリケーションを扱いますが、このテクニックを応用して、他のLotus Notes/Dominoのテンプレートを変換してLotus Notes 8のPIM (Personal Information Management: メール、カレンダー、連絡先)と同じようなルック&フィールを持たせられるようになります。

関連記事として、"Advanced Java View features"がdeveloperWorks® Lotus上で追って公開される予定です。

今回紹介する手順は、ナビゲータ(アウトライン)やリストビューやプリビューのレイアウトを持つシンプルなアプリケーションでのみ有効です。以下に注意点を示します。

  1. ビューでの多段階層のカテゴリー表示が正常に行われない可能性がある。
  2. 複数階層化されたビューでの、列の総計が正常に動作しない可能性がある。
  3. カテゴリー表示で使われる、カスタムの折りたたみアイコンが動作しない可能性がある。
  4. ナビゲータペインでは、カスタムアクションが表示されない。
  5. ナビゲータタイトルバーのプルダウンメニューで、カスタムアクションが表示されない。

変換のプロセスについて

Lotus Notes 8以降のクライアントで、Lotus NotesアプリケーションをJavaビューでレンダリングするためには、アプリケーションはコンポジット・アプリケーションになっている必要があります。そのため、まず最初に、Composite Application Editor (CAE)を使ってコンポジットアプリケーションを作成することから始まります。そして、Lotus Domino Designerでテンプレートに変更を加えて、さらにCAEを使って変更を行います。

個人ジャーナルのアプリケーションを例として扱う理由は、ナビゲータやリストビューやプリビューペインの形式においてシンプルであるとともに、上記の条件を満たしているためです。

実際に始める前に、Lotus Notes 8.5と、オプションでインストールされるCAEがインストールされていること、それからLotus Domino Designerがインストールされていることを確認してください。また、16 x 16のPNGファイルが「ページアイコン」用に必要となりますので用意してください。「ページアイコン」とは、アプリケーションのタブに表示されるものです。

図1は、元からある個人ジャーナルのアプリケーションで変換前のものです。図2は、この記事の手順に沿って変換した後の状態です。


図1. バージョン7までのLotus Notesで使われている個人ジャーナルのアプリケーション


図2. Javaビューを使って変換された個人ジャーナルのアプリケーション


空の個人ジャーナルアプリケーションから作業開始

Lotus Notesクライアントを使って、以下の手順で進めてください。

  1. Lotus Notesアプリケーションの新規作成画面を出し、journal6.ntfを選択する。
  2. 「テンプレートを引き継いで設計」オプションのチェックが外れていることを確認してください。
  3. 作成したアプリケーションを開きます。
  4. タブ上で右クリックして、Lotus Domino Designerで開きます。

Lotus Domino Designerを使用してコンポジットアプリケーションを新規に作成する

Lotus Domino Designerを使って、以下の手順で進めてください。

  1. ナビゲータで、Composite Applicationsをクリックして、Applicationsをクリックします。
  2. 設計ペインにあるNewCompAppボタンをクリックします。
  3. Notes Journal Application.xmlという新規アプリケーションファイル名をつけ、OKをクリックします。(図3参照)



    図3. CAE: Lotus Domino Designerで新規コンポジットアプリケーションを作成


  4. Lotus Domino Designerで、フレームセットを選択し、BorderFrameをダブルクリックして編集します(図4を参照)。
  5. メニューから「ファイル」-「プロパティ」を選択してプロパティ画面を表示させ、「フレームセット」プロパティを選択します。
  6. プロパティ画面下部の「アプリケーション名」で、Notes Journal Application.xmlを選択します。
  7. ページ名で、「空白ページ」を選択します。



    図4 Lotus Domino Designer: フレームセットプロパティでの設定


  8. メニューから「ファイル」-「保存」を選択します。
  9. メニューから「ファイル」-「終了」を選択します。

メールコンポーネントをベースにして新規アプリケーションを作成する

コンポジットアプリケーションのフレームワークでは、Lotus Notesのメールコンポーネントを使用します。具体的にはナビゲータとリストビューのコンポーネントです。これらを使ってコンポジットアプリケーションのページを作成していきます。Lotus Notesのメールコンポーネント群は既に、リストビューやプリビューを実行するようにワイヤリングされていますので、今回はメールコンポーネントから個人ジャーナルアプリケーションのフレームセットへワイヤリングを再設定することを行います。

Lotus Notesクライアントを使って、以下の手順で進めてください。

  1. Lotus Notesクライアントを起動します。
  2. 先ほど作成した個人ジャーナルのアプリケーションを開きます。
  3. メニューから「アクション」-「アプリケーションの編集」を選択すると、コンポジットアプリケーションの編集画面(Composite Application Editor)が開きます。
  4. 画面右側にある矢印(図5を参照)をクリックして、コンポーネントパレットを引き出します。

図5. CAEを使ったアプリケーションの編集 (コンポーネントパレットを引き出す)

コンポーネントの追加

ここでは、2つのコンポーネントを追加する必要があります。

Composite Application Editorを使って、以下の手順で進めてください。

  1. 右側のコンポーネントパレットのPIMセクションにある、「Notes メールビュー」を真ん中のペインにドラッグ&ドロップします。



    図6. メールビューのコンポーネントをドラッグ&ドロップする


    この操作の結果、画面は以下のよう(図7)になっているはずです。



    図7. CAE: Notesメールビューをドロップした後の状態


  2. この前のステップで行った作業の結果、Lotus Notesクライアントへ画面のフォーカスが移動する場合があります。その場合は、タスクバーにあるLotus Notesをクリックして、「編集中: Blank Application」を再度開いてください。右側のコンポーネントパレットが閉じている場合には、再度開き直してください。
  3. 今度は、「Notesメールナビゲータ」コンポーネントを中央のペインにドラッグ&ドロップします。これを行う際に、中央ペインの左側にドロップするようにします。マウスでドラッグすると、ドロップした際に左右上下のどの位置に配置されるかを示す、灰色の枠が表示されます(図8を参照)。



    図8. CAE: メールナビゲータをドラッグ&ドロップする


ドラッグ&ドロップした後の状態は次のようになっているはずです(図9を参照)。


図9. CAE: 中央ペインへドラッグ&ドロップしたところ

個人ジャーナルアプリケーションから、境界用のフレームセット設定を引き継ぐ

ここで、メールコンポーネントを個人ジャーナルの要素で置きかえる必要があります。個人ジャーナルテンプレートから境界用のフレームセット設定を引き継いでいるアプリケーションを新規に作成します。

以下の手順で進めてください。

  1. 左側のペイン内にある「Notesメールナビゲータ・コンポーネント」で右クリックを行い、「コンポーネントプロパティの編集」を選択します。
  2. 「表示設定」タブで、「タイトルバー」を選択して、タイトルバーが表示されるようにします。
  3. 「コンポーネント設定」タブをクリックします。
  4. 「Notes URL」フィールドを選択します。
  5. 文字列中のEを0で置きかえます。Eがなく、最初から0になっている場合もあります。MailFSをBorderFrameに置きかえます。結果的に、notes:///0000000000000000/BorderFrame?OpenFramesetとなります(図10を参照)。



    図10. CAE: Lotus Notes URLフィールドの更新


  6. OKをクリックします。
  7. 左側のペイン内の「Notesメールビュー」で右クリックを行い、「コンポーネントプロパティの編集」を選択します。
  8. 「コンポーネント設定」タブをクリックします。
  9. 「Notes URL」フィールドを選択します。
  10. 文字列中のEを0で置きかえます。Eがなく、最初から0になっている場合もあります。MailFSをBorderFrameに置きかえます。結果的に、notes:///0000000000000000/BorderFrame?OpenFramesetとなります。
  11. 「詳細」タブをクリックします。
  12. com.ibm.rcp.csiviews.viewpart.threadurlを選択して、削除をクリックします。
  13. com.ibm.rcp.csiviews.viewpart.folderaliasを選択して、削除をクリックします。
  14. OKをクリックします。
  15. ここまでの変更内容を保存するには、メニューから「ファイル」-「保存して閉じる」を選択します。

ページアイコンの設定とアプリケーション名のリネーム

Lotus Domino Designerを使って、以下の手順で進めてください。

  1. 16 x 16ドットのPNG形式の画像ファイルを用意します。例えば、notesbook8.ntfのテンプレート内の画像であるtab_notebook_16.pngを参考にしてください。
  2. Lotus Domino Designerを開きます。
  3. 「リソース」-「イメージ」を選択します。
  4. 「イメージリソースのインポート」をクリック(図11を参照)すると、ファイル選択のダイアログボックスが表示されます。ファイル名フィールドで*.pngを入力してOKをクリックすると、png形式の拡張子がついたファイルが表示されます(図12を参照)。このダイアログボックスの「ファイルの種類」では、PNG形式はありませんが、GIF形式の選択で正常にインポートが可能です。



    図11. Lotus Domino Designer: ページアイコンを共有リソースの画像ディレクトリーに追加する




    図12. Lotus Domino Designer: PNGファイルを表示させるためのファイル名フィールドの入力


  5. Lotus NotesクライアントからComposite Application Editorを開きます。
  6. ナビゲータ内の「空白ページ」で右クリックし、「ページプロパティの編集」を選択します。
  7. 「ページの設定」タブ内の「ページアイコン」で選択ボタンを押し、先ほど追加したアイコンファイルを選択します(図13を参照)。



    図13. CAE: ページアイコンの編集


  8. 次に、アプリケーションの名前を「ページタイトル」フィールドに入れます(図14)。



    図14. CAE: ページタイトルフィールドの編集


  9. OKをクリックします。
  10. メニューから「保存して閉じる」を選択します。

    Lotus Notesクライアントに戻り、個人ジャーナルアプリケーションを開きます。すると、図15のように表示されるはずです。設定したタブアイコンを表示させるには、Lotus Notesの再起動が必要な場合があります。



    図15. Lotus Notes: 更新したアプリケーションをLotus Notesクライアントで表示したところ


ページアイコンへの参照を設定する

このアプリケーションを他のワークステーションへ移動できるようにするには、ページアイコンへの参照をセットする必要があります。これは、ページアイコンの参照先を適切に解決できるようにする、という意味です。そうすることで、このテンプレートからアプリケーションを新規に作成できるようになります。

Lotus Domino Designerを使って、以下の手順で進めてください。

  1. メニューから「アプリケーション」-「開く」を選択し、作成した個人ジャーナルアプリケーションを開きます。
  2. 「複合アプリケーション」-「アプリケーション」を選択し、作成済みのNotes Journal Application.xmlファイルを開きます。
  3. 中央ペインに「設計」と「ソース」を切り替えるタブがありますが、ここで「ソース」を選択します。
  4. <preference name=”com.ibm.portal.PageIcon”> の文字列を探し出します
  5. "base:value value"に、ページアイコンのPNGファイル名を、以下のようにセットします。
    <preference name=”com.ibm.portal.PageIcon”>
    <base:value value=”Notebook_view16.png” xsi:type=”base:String”/>
    </preference>
  6. ファイルを保存して終了します。

アクションバーに分割型のアクションボタンを追加する

Lotus Notes 8では、アクションバーのボタンに分割型のアクションボタン機能が追加されました。この分割型のアクションボタンではワンクリックで、デフォルトで設定されたアクションが実行されるほか、ドロップダウンリストからアクションを選択できるようになっています。ひとつのボタンを2つに割って多機能化していることから、分割アクションボタン(分割ボタン)と呼んでいます。

この一例は、メールのボタンに見ることができます。メール画面で「新規」ボタンを押すと、新規メールが作成されますが、ドロップダウンリストをクリックすると、メール以外の新規作成も選択できるようになっています(図16を参照)。


図16. 新機能の分岐型アクションボタンの一例

この分岐型のアクションボタンを作成するには、Lotus Domino Designerで以下の手順で操作します。

  1. 共有アクションプロパティウィンドウを開きます。
  2. 共有アクションのプロパティボックス、あるいは「分割ボタンとして表示」を選択してください(図17を参照)。



    図17. split-アクションボタンの作成


ブックマークタイプの設定

アプリケーションタブからアプリケーションのブックマークを行うと、デフォルトでは、コンポジットアプリケーションXML設定を使った結果、Lotus Notesが、 Notes Remote Procedure Call (NRPC) URLを作成することになります。しかし、このURLへのアクセスは低速であり、かつ、もしURL先が存在しない場合はエラーが発生します。そのため、ブックマークを行うにあたって、Notes URL使うようにするのがよいでしょう。また、この手順を使えば、データベースアイコンがブックマークのアイコンとして確実に使われるようにもなります。

Notes URLへスイッチするためには、コンポジットアプリケーションXMLへプリファレンスを追加する必要があります。Lotus Notesアプリケーションを開き、「アクション」-「アプリケーションの編集」を選択すると、Composite Application Editorが開きますが、このCAEの中で設定ができます。ページ要素から「ページプロパティの編集」を選択します(図18)。


図18. Composite Application Editor内での「ページプロパティの編集」

ページプロパティの編集画面の「詳細」タブを選択し、追加ボタンを押し名前としてcom.ibm.rcp.bookmark_level、その値としてselectionを設定します(図19を参照)。


図19. Bookmark_levelプリファレンスの追加

ナビゲータスイッチャーの無効化

デフォルトでは、ナビゲータのタイトルバーにはカレンダーとタスクへの切り替え(スイッチャー)ができるようナビゲータが表示されます。他のコンポジットアプリケーションのXMLプリファレンスにより、これを非表示にすることもできます。


図20 カレンダーとタスクへのスイッチャー

以下の手順で進めてください。

  1. Composite Application Editorを起動し、「Notesメールナビゲータ」で右クリックを行い、「コンポーネントプロパティの編集」を選択します。
  2. 編集画面の「詳細」タブを選択し、追加ボタンを押します。追加のプリファレンス名としてcom.ibm.rcp.showSwitch、その値としてfalseを選択します(図21を参照)。そして、CAEを保存して閉じます。



    図21. スイッチャーのプリファレンス表示の追加



まとめ

この記事では、今お持ちの既存アプリケーションをカスタマイズしてモダンにする手法をステップバイステップで解説してきました。これで、皆様は様々なアプリケーションをLotus Notes 8のPIMアプリケーション(メール、カレンダー、連絡先、タスク、ジャーナル)のようにする数多くの手段を手に入れたことになります。詳細については、Lotus Notes Composite Application EditorのヘルプやLotus Domino Designer 8.5のヘルプを参照してみてください。


参考文献

著者について

Steve Castledine is an Advisory Software Engineer with IBM. He is part of the Software Group, and currently responsible for growing the open source effort on OpenNTF.Org and demonstrating the value of Lotus Domino XPages. Previously Steve worked on projects to deliver Blog, Wiki, Notebook/Personal Journal and other PIM applications. You can reach Steve at steve.castledine@uk.ibm.com.

Margo Ezekiel is a User Interface Designer, working on the IBM Lotus Notes and iNotes Mail clients. She designed the Lotus Notes 8.0 Mail Client, using the Java view features outlined in this document. She worked with Steve Castledine to update the Personal Journal (aka Notebook) application in Lotus Notes 8.5.

不正使用の報告のヘルプ

不正使用の報告

ありがとうございます。 このエントリーは、モデレーターの注目フラグが設定されました。


不正使用の報告のヘルプ

不正使用の報告

不正使用の報告の送信に失敗しました。


developerWorks: サイン・イン


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 利用条件

 


お客様が developerWorks に初めてサインインすると、プロフィールが作成されます。 プロフィールで選択した情報は公開されますが、いつでもその情報を編集できます。 お客様の姓名(非表示設定にしていない限り)とディスプレイ・ネームは、投稿するコンテンツと一緒に表示されます。

表示名をお選びください

developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

(半角英数字で3文字以上31文字以下にする必要があります)


「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 利用条件

 


この記事を評価する

コメント

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Lotus, Java technology
ArticleID=369476
ArticleTitle=Lotus NotesアプリケーションのLotus Notes 8のJavaコンポーネントへの変換
publish-date=02102009
author1-email=steve.castledine@uk.ibm.com
author1-email-cc=
author2-email=mlezekie@us.ibm.com
author2-email-cc=

タグ

Help
このタグで、My developerWorks のすべてのタイプのコンテンツを見つけるために検索フィールドを使用します。

スライダーバーを使用することで、より多く(少なく)タグを表示します。

人気のタグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するトップのタグを表示します。

マイ・タグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するお客様ご自身のタグを表示します。

このタグで、My developerWorks のすべてのタイプのコンテンツを見つけるために検索フィールドを使用します。人気のタグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するトップのタグを表示します。マイ・タグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するお客様ご自身のタグを表示します。