Lotus iNotes 8.5 は IBM Lotus Domino® Web Access の新しい名前であるだけでなく、多くの改良点を含む多機能の新規リリースです。その中でも最も注目されるのが新しいルック・アンド・フィールで、Lotus Notes クライアントとの一貫性がより高められ、Lotus Domino Web Access 8.0.1 ライト・モード (developerWorks® の前の記事「Introducing IBM Lotus Domino 8.0.1 Web Access Lite mode」参照) で最初に導入された画期的な機能を活用し、さらに改善したものになっています。8.5 リリースのフル・モードには、管理対象タブ、サイドバー、ステータス・バー、およびサポート・コンソールが含まれています。また、より機能が豊富で性能の高いウィジェットと、この新しいフレームワークを活用する高度な機能も追加されています。Lotus iNotes ライト・モードでは、カレンダーのサポートなど、数多くの改善が行われています。さらに、ウルトラ・ライト・モードが新たに追加され、今や一般的になったモバイル・デバイスのリッチ・ブラウザーで iNotes の重要な機能のサブセットを利用できるようになりました。
このトピックには説明する内容がたくさんあるため、記事は 3 つに分けられています。これが最初の記事で、フル・モードに加えられた主な機能強化の概要を詳述します。2 番目の記事「New features in IBM Lotus iNotes 8.5: Administration policies and lite mode」では、ライト・モードでの機能強化と管理機能の重要な改良点について説明します。最後の記事では、新しい Lotus iNotes ウルトラ・ライト・モードについて説明します。
フル・モードには、Lotus Domino Web Access 8.0.1 のライト・モードで初めて採用されたものと同じフレームセット・ベースのページ・アーキテクチャーとユーザー・インターフェース (UI) フレームワークが導入されました。また、同じ基本 UI ウィジェット (機能エリアの切り替え、メニュー・バー、スプリッターなど) も活用されています。フル・モードでは、洗練されたユーザー対話機能も引き続き提供されます。たとえば、幅の狭い代替表示フォーマットをサポートする多機能の仮想リスト (サイド・プレビューでの利用促進)、キーボードによる対話、およびリッチ・クライアント・アプリケーションに匹敵する一般的な単一エントリーのスクロール操作などが挙げられます。フル・モードのビューは、非同期トランザクションを実行してビュー・データを取得するようになりました。図 1 を参照してください。
図 1. フル・モードでの受信ボックス

機能エリアの切り替えは、Lotus iNotes の主な機能エリアをアプリケーション・アイコンで示します。いずれかのエントリーをクリックすると管理対象タブが起動または切り替えられ、対応する機能エリアのビューが表示されます。
Lotus Notes クライアントと同様に、Lotus iNotes でも機能エリアと文書が個別のタブで開かれるようになりました。ユーザーは、クリックすることで進行中の作業を切り替えられます。ユーザー・プリファレンスも固有のタブで開かれます。新しいウィジェット機能もこのタブを活用していますが、この点については後述します。
8.0.1 のライト・モードで導入されたサイドバーが強化され、追加のパネル・タイプをサポートするようになりました。その中で最も注目されるのが IBM Lotus Sametime® コンタクト・リストです。このコンポーネントは AccordianContainer Dojo ウィジェットを拡張し、Dojo ライブラリーによって提供されるさまざまな AJAX 視覚効果を活用しています。また、一日の予定とヘルプ用のサイドバーもあります。ユーザーはサイドバーの表示内容の管理や、サイドバー全体の表示/非表示の切り替えができます。
フル・モードに不可欠なパーツとして、ステータス・バー・エリアとサポート・コンソールが加わりました。
メニュー・バー・ウィジェットが改善され、オーバーフロー・インジケーターがサポートされるようになりました。図 2 に示すように、ウィンドウの幅が狭くて現在の最上位のアクションをすべて表示できないときに、オーバーフロー・インジケーターが表示されます。
図 2. オーバーフロー・インジケーターが表示されたアクション・バー

新しい仮想リスト・コントロールは新しい UI フレームワークとともに機能し、従来の仮想リストに非同期のデータ取得トランザクションを追加した機能を提供します。
カレンダー・ビューが再設計され、Lotus Notes 8 以降のクライアント・ビューとの互換性が強化されるとともに、非同期のデータ取得をサポートするようになりました。図 3 を参照してください。
図 3. 日付コントロールが表示された 1 週間 (勤務日) のカレンダー・ビュー

Lotus iNotes のフル・モードとライト・モードは、Mac OS X Leopard/10.5 上で Apple Safari 3.1 ブラウザーをサポートするようになりました。Mac ユーザーは、Mozilla Firefox または Safari のどちらを使用するか選択できます。次の 2 つの機能は Microsoft Windows® 上の Lotus iNotes でサポートされていますが、Mac プラットフォームでは利用できません。
- Lotus Domino オフライン・サービスを通じたオフラインまたはローカルでのアーカイブ
- 他のネイティブ・アプリケーションからのメール送信に使用するデフォルトのメール・アプリケーションとして Lotus iNotes を指定する機能
また、Safari での Lotus iNotes には、ログアウト時または最後のブラウザーが閉じられるときに、より完全なキャッシュ消去を実行する機能がありません。しかし、ほとんどのデータ応答は、ブラウザー・キャッシュ内に格納されないよう、すでに指定されています。
最後に、Mac ブラウザーで Lotus Sametime 機能を使用するには、サーバーの NOTES.INI ファイル内でNOTES.INI 設定「iNotes_WA_MacIM=1」を指定する必要があります。
Lotus iNotes には、メール・プリファレンスの設定「送信前にメッセージをスペルチェックする」が追加されました。この設定 (「メール」->「一般」パネル) を選択すると、メッセージを送信する前に Lotus iNotes によって自動的にスペル・チェックが実行されます。エラーが検出された場合は、「送信」ボタンと「送信のキャンセル」ボタンを含むウィンドウがスペル・チェックによって表示されます。
疑わしいメッセージを受け取ったとき、ユーザーは「受信ボックス」フォルダー、「すべての文書」ビュー、または任意のユーザー・フォルダーで MIME メッセージ・ヘッダーを調べられるようになりました。「オプション」メニューで、「MIME ヘッダーの表示」アクションと「MIME の完全表示」アクションを利用できます。
Lotus iNotes 8.5 には、インターネットまたはイントラネット・ベースのさまざまなサービスとの統合を強化する新機能がいくつか追加されました。主な機能としては、IBM Lotus Quickr™ との統合、Lotus iNotes カレンダーへの Google カレンダー・データのオーバーレイ表示、Lotus Notes のツールボックスと互換性のあるウィジェットによるインターネットまたはイントラネット・サービスとのより緊密な統合などがあります。この記事の後半では、これらの機能に焦点を当てて説明します。
Lotus iNotes の Web 2.0 機能は、Lotus Domino のメール・ポリシー設定によって管理されるようになりました (表 1 参照)。この構成は、ユーザーがどの Lotus Domino メール・サーバーにレプリカを置くかにかかわらず、ユーザーごとに設定を有効または無効にできることを意味します。Lotus iNotes での Lotus Domino ポリシーに関連する新機能については、このシリーズの 2 番目の記事で詳しく取り上げます。ここでは、システム管理者が適切なユーザーに対して目的の機能を明示的に有効にする必要がある点を述べておきます。
表 1. メール設定文書の「Lotus iNotes」タブにおける Web 2.0 機能のセクション
| 機能 | 設定 |
|---|---|
| ウィジェット設定 メールアウトラインにウィジェットフォルダーを表示 | 有効 |
| XML からのウィジェットの作成をユーザーに許可する | 有効 |
| Lotus Quickr 統合 Lotus Quickr 統合を許可 | 有効 |
| カレンダーの購読 カレンダーの購読を許可 | 有効 |
外部サーバーからデータを取得し、Lotus iNotes ページ内でそのデータをマッシュアップするには、ブラウザーによって実施されるクロス・サイト・スクリプティングのセキュリティー制限に対処する必要があります。Lotus iNotes では、これらの問題を解決するために、Lotus Domino サーバーにプロキシー・サーブレットを導入しています。プロキシー・サーブレットは Lotus Domino XPages サーブレット・アダプター内でプラグインとして実行され、異なるホスト・アドレスに存在する特定の外部サイトまたはサービスにユーザーの代理として要求を送信し、その応答をブラウザーに返します。図 4 を参照してください。一般に、特定のホスト・アドレスから生成された Web ページは、同じホスト・アドレスとのみ通信するよう制限されています。プロキシー・サーブレットの支援により、ブラウザーに関する限り、Lotus iNotes は同じサーバーとのみ通信を継続します。
図 4. プロキシー・サーブレットのアーキテクチャー

Lotus iNotes のプロキシー・サーブレットは、プロキシー用の 3 つのコンテキスト BasicProxy、GoogleProxy、および QuickrProxy を持ちます。コンテキスト名からわかるように、BasicProxy は汎用プロキシー機能で、他の 2 つのベースとなっています。GoogleProxy は Google オーバーレイ・カレンダー用の専用プロキシー機能で、QuickrProxy はLotus Quickr 用に同様の機能を提供します。
サーブレットは REST ベースのプロキシー URL をインプリメントしています。例を以下に示します。
http://<myserver>/BasicProxy/http/www.mycompany.com?param1=value1
Web サイトに対して開かれているプロキシーがあると、このプロキシーを利用している Web サーバーおよびページは、攻撃に対して潜在的にぜい弱です。このような脅威を制限するには、ホワイト・リストを作成し、これに沿ってプロキシーを許可する URL パターンを明示的にリストする必要があります。システム管理者は、標準的なテキスト・エディターを使用して、このホワイト・リストを指定するプロキシー・サーブレット構成ファイルを編集しなければなりません。この構成ファイルの名前は proxy-config.properties で、<domino data>\properties フォルダーにあります。デフォルトのファイルでは、どの URL のプロキシーも許可されていません。
現在有効なホワイト・リストに基づいてポリシー違反によるエラーが検出されると、プロキシーはカスタム JSON エラー・オブジェクトをブラウザーに送り返します。リスト 1 を参照してください。
リスト 1. カスタム JSON エラー・オブジェクト
{ "error":
{"@code":"403",
“param” : [ {"@name":"url","value" : "http://www.mycompany.com?"} ],
"details" : "Forbidden: A policy was against the issued request --Unauthorized:
Requested URI not in list of allowed URIs"}
} |
proxy-config.properties ファイル内で有効なプロパティーの詳細を表 2 に示します。
表 2. proxy-config.properties ファイルの有効なプロパティー
| プロパティー | 説明 |
|---|---|
| enabled | プロキシー・サーブレットを有効にする場合は true に設定します。 |
| connectTimeout | 接続を試みる時間の長さです。指定されていない場合、デフォルトは 10 秒です。 |
| Policy<n>.url | このポリシーを適用するサイトのアドレスです。 |
| Policy<n>.actions | このポリシーで許可する HTTP メソッドのセットです。 |
| Policy<n>.cookies | このサイトに許可する Cookie です。 指定された名前を持つ Cookie は、常にこのサイトへプロキシーが実行されます。また、このサイトから受け取ったすべての受信 (Set-Cookie 応答ヘッダー) は記憶され、このサイトへの以降の要求の際に最終的に送り返されます。 |
| Policy<n>.headers | このサイトに許可するヘッダー。または、すべてを許可する場合はアスタリスクを使用します。この属性により、どのヘッダーがターゲット・サーバーに転送されるのかが決められます。 |
| Policy<n>.mime-types | ターゲット・サーバーからの送信を許可するコンテンツ・タイプ。または、すべてを許可する場合はアスタリスクを使用します。 |
リスト 2 は、Lotus iNotes で Google カレンダーのオーバーレイ機能が正しく実行されるよう許可された構成ファイルの例です。最初のポリシー (以下の policy0) を使用して、ユーザーの Google カレンダーからデータが取り出されます。認証用に HTTPS 接続が必要な場合は 2 番目のポリシー (policy1) が使用され、ユーザーは個人のカレンダーにアクセスできるようになります。
リスト 2. 構成ファイル
enabled=true connectTimeout=10 policy0.url=http://www.google.com/ policy0.context=/xsp/proxy/GoogleProxy/ policy0.actions=GET,POST policy0.cookies= policy0.headers=* policy0.mime-types=* policy1.url=https://www.google.com/ policy1.context=/xsp/proxy/GoogleProxy/ policy1.actions=GET,POST policy1.cookies= policy1.headers=* policy1.mime-types=* |
Lotus Domino サーバーと Lotus Quickr サーバー間でシングル・サインオンが構成されている場合は、リスト 3 に示した方法で認証 Cookie (LtpaToken) をプロキシーすることができます。
リスト 3. 認証 Cookie
policy2.url=http://your_quickr_server:10038/ policy2.context=/xsp/proxy/QuickrProxy/ policy2.actions=GET,POST policy2.cookies=LtpaToken policy2.headers=* policy2.mime-types=* |
システム管理者は、Java™ ログを有効にすることでプロキシー・サーブレットをモニターできます。この手順は、<domino>\jvm\lib\logging.properties ファイルを編集することによって行います。ログを有効にすると、トラブルシューティングやトラッキングのために役立ちます。リスト 4 に例を示します。
リスト 4. Java ログの有効化
#This example logs all the activities to a file specified using simple text format handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler java.util.logging.FileHandler.pattern = c:\\domino\\log\\jdklog.txt java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter com.ibm.dwa.service.proxy.level = ALL |
Lotus iNotes 8.5 では、1 つ以上の Google カレンダーからのエントリーをユーザーのカレンダー・ビュー内にオーバーレイ表示する機能がサポートされています。さまざまなスポーツ・チーム (Boston Red Sox、New York Yankees など) や、学校または劇場などの組織のスケジュールが記載された公開 Google カレンダーを利用できます。多くのユーザーが、このようなカレンダーを使用して個人のイベントを記録しています。これらのイベントを Lotus iNotes カレンダーにオーバーレイ表示することにより、通常の Lotus Domino ビジネス・イベントとともに個人的なイベントを視覚的に確認できます。
外部カレンダーは、「マイカレンダー」アウトライン・エントリーの右横にある「リンクの追加」をクリックすることにより指定できます。図 5 を参照してください。
図 5. 1 ヶ月のビューにオーバーレイ表示された Google カレンダーと「カレンダーの追加」ウィンドウ

Lotus iNotes はまだ Lotus Notes アカウント文書をサポートしていないため、Lotus iNotes 8.5 で指定された個人カレンダーは、入力された Google 認証情報を保持しません。このため、セッションごとに 1 回、最初に必要になった時点でこの情報が求められます。このカレンダーへの XML 個人アドレス URL がわかっている場合、個人カレンダーにも公開レンダー URL オプションを利用できます。この情報は、Google カレンダーの設定ウィンドウから入手できます。オーバーレイ表示するカレンダーごとに、背景色、テキストの色、あらかじめ定義されたアイコン・セットの 1 つを選択でき、外部カレンダーからのエントリーを視覚的に区別するために役立ちます。
外部カレンダーを指定して有効にすると (カレンダーの横にあるチェック・ボックスを選択)、カレンダー・ビュー内でのユーザーの移動に応じて、Lotus iNotes によって適切なカレンダー・データが非同期的に取得されます。ユーザーは左側のパネルでこれらのチェック・ボックスを操作して、オーバーレイが設定されたカレンダーの表示または非表示を切り替えられます。
Lotus iNotes でオーバーレイ表示された Google カレンダーのエントリーを開くと、そのエントリーは、Google カレンダー UI が表示されている新規ウィンドウで開かれます。エントリーが認証を必要とする個人カレンダーからのもので、まだ Google サイトへの認証を行っていない場合は、Google のログイン・ページが表示され、認証後、イベント・ページにリダイレクトされます。
Google カレンダーのオーバーレイ表示のこの初期リリースには、特に Lotus Notes 8.5 で導入された同等の機能と比較した場合、次に示す既知の制限があります。
- 前述したように、ユーザーのクレデンシャル情報はセッション間で保存および記憶されません。Lotus Notes 8.5 クライアントに実装されているこの機能とは異なり、この場合はセッションごとに、オーバーレイ表示する各カレンダーへのログインが求められます。
- 同じアカウントで複数のカレンダーを保持している場合でも、現時点では、デフォルトの Google カレンダーにのみ機能します。
- 他の種類のカレンダー (別の Lotus Notes カレンダーまたは iCal カレンダーなど) のオーバーレイ表示はサポートされていません。
- オーバーレイ表示が構成されたカレンダーのリストに関連する設定は、Lotus Notes 8.5 クライアントと共有することができません。
- ユーザーがオフラインの場合、またはローカル・アーカイブ・データベースにアクセスしている場合、この機能は利用できません。
Lotus Quickr は、チームのメンバー間でコンテンツの共有、共同作業、およびオンライン作業を可能にするチーム・コラボレーション・ソフトウェアです。Lotus iNotes と Lotus Quickr の統合により、次のことが可能になります。
- Lotus iNotes 内で優先する Lotus Quickr プレースを指定する。
- 送信メッセージの作成中に、Lotus Quickr のファイル、フォルダー、またはプレースへのリンクを参照および挿入する。
- 受信した添付ファイルを Lotus Quickr プレース内に保存する。
- 添付ファイルを含むメッセージを送信するときに、あらかじめ指定した Lotus Quickr プレースに添付ファイルを自動的に保存し、そのファイルへのリンクを送信するよう Lotus iNotes を設定する。
- 添付ファイルを含むメッセージを送信するときに、添付ファイルを Lotus Quickr ストアに移動してファイルのリンクだけを送信するか、添付ファイルをそのまま送信するかを選択できるプロンプトをユーザーに表示するよう Lotus iNotes を設定する。
Lotus iNotes 8.5 で Lotus Quickr 統合機能を使用するには、Lotus Domino メール・サーバーで、シングル・サーバーまたはマルチ・サーバーのいずれかを使用するセッション・ベースの認証を有効にする必要があります。この認証は、シングル・サインオン (SSO) とも呼ばれています。Lotus Domino サーバーが SSO 用に構成されていて、接続先の Lotus Quickr サーバーが同じドメイン内にある場合は、サンプルの proxy-config.properties で示したように、ホワイト・リストを通じて LTPA トークンのパススルーを許可することにより、ユーザーは Lotus Quickr サーバーにアクセスできます。Lotus Quickr サーバーが同じドメイン内にない場合、ユーザーはセッションごとに接続先のサーバーとの認証を求められます。
Lotus Quickr サーバーをブラウズする際、パフォーマンスの観点により、Lotus Quickr から返されるフィード・エントリーのリストは、デフォルトで 50 に制限されています。許可するフィード・エントリーのデフォルトの数を変更するには、サーバーの NOTES.INI ファイルで NOTES.INI 設定「iNotes_WA_Quickr_Feed_Page_Size」を使用し、返されるエントリーの数を指定します。
それでは、Lotus iNotes 内の Lotus Quickr 統合の UI を図 6 で見ることにしましょう。
図 6. Lotus iNotes プリファレンスでの Lotus Quickr ウィンドウ

Lotus iNotes ユーザー・プリファレンスの新しい Lotus Quickr ウィンドウには、Lotus Quickr 統合の設定が含まれています。このウィンドウでは、優先する Lotus Quickr プレースを追加または削除したり、添付ファイルを送信するときの処理方法を設定したりすることができます。Lotus iNotes の他の Lotus Quickr 統合機能を利用する前に、優先する Lotus Quickr プレースを 1 つ以上追加する必要があります。
「プレースの追加」ボタンを使用し、Lotus Quickr サーバーへの URL を入力してから「参照」ボタンをクリックします。これで、Lotus Quickr サーバー上でアクセス権を持っているプレースを参照できるので、Lotus iNotes からアクセスしたいプレースを選択します。
添付ファイルを含む電子メールを送信するときに、Lotus Quickr に関してどのような処理を行うかを設定できます。通常の方法でメッセージを送信するか、優先する特定の Lotus Quickr プレースに常に添付ファイルを保存し、その URL リンクで添付ファイルを置き換えることができます。あるいは、メッセージごとに添付ファイルの処理方法を決めるプロンプトを表示することもできます。
メッセージを送信するとき、エディター・アクション・バーの Lotus Quickr アイコンを使用して、すでに Lotus iNotes プリファレンスで構成済みの優先する Lotus Quickr プレースのいずれかを参照し、選択できます。Lotus Quickr 内のファイル、フォルダー、およびプレースへのリンクを挿入すると、このリンクは図 7 のように電子メール内に表示されます。挿入されたファイル・リンクについては、概要を表示するか、ブラウザーのダウンロード機能を使用して実際のファイルをダウンロードして表示できます。ユーザーのワークステーションに Lotus Quickr Connectors がインストールされている場合、「リンクの編集」も利用できます。
図 7. 新規メッセージを作成するときの Lotus Quickr リンクの挿入

外部へのメッセージを送信するとき、新しい添付ファイルをメッセージとともに送信するか、Lotus Quickr ライブラリーに保存し、電子メール内でリンクに置き換えて送信するかを選択できます。Lotus Quickr のプリファレンスで「確認する」オプションを選択すると、新しい添付ファイルを含む電子メールを送信するときに、図 8 に示すようなメッセージが表示されます。
図 8. 添付ファイルが含まれるメッセージを送信するとき (プリファレンスで「確認する」オプションが設定されている場合)

Lotus Quickr 統合のこの初期リリースには、特に Lotus Notes 8.5 で導入された同等の機能と比較した場合、次に示す既知の制限があります。
- 受信した添付ファイルを Lotus Quickr プレースに保存するとき、現在のメッセージから添付ファイルを削除する (および、保存したファイルへの Lotus Quickr リンクに置き換える) オプションはありません。
- Lotus Quickr Connectors がインストールされたワークステーションから送信された Lotus Quickr リンクを含むメッセージを表示するとき、現在のワークステーションに Lotus Quickr Connectors がインストールされていないと、「リンクの編集」 (図 8 参照) は機能しません。代わりに、個別のブラウザー・ウィンドウまたはタブにエラー・ページが表示されます。「リンクの編集」には Lotus Quickr プロトコル URL が含まれているため、ワークステーションに Lotus Quickr Connectors がインストールされていないと、この URL を処理できません。Lotus Quickr プロトコル URL の例を以下に示します。
quickr://yourQuickrserver.com:10038/library/
0a58d9804a90e212b884fe23596ab50c/document/5f6143004a91235cb88cfe23596ab50c - ユーザーがオフラインの場合、またはローカル・アーカイブ・データベースにアクセスしている場合、この機能は利用できません。
Lotus iNotes は、Lotus Notes ウィジェットを制限付きでサポートします。ウィジェットは、「メール」ナビゲーション・ペインの「ウィジェット」フォルダーに表示されます。ウィジェットを使用すると、Lotus iNotes のタブ・パネルまたは新しいブラウザー・ウィンドウに Web ページを表示できます。ウィジェットは、ユーザーに必要な入力を求めるよう構成することも、ページ上で選択されたテキストから自動的に入力を受け取るよう構成することもできます。Lotus iNotes は Web ページ・ウィジェットのみサポートします。現時点では、Google ガジェット、フィード、および Lotus Notes 文書の各ウィジェットはサポートされていません。
ウィジェットは、次の方法で「ウィジェット」フォルダーに追加できます。
- システム管理者は、inotes_config.xml 内で指定することにより、すべての Lotus iNotes ユーザー用のウィジェットを定義できます。
- ユーザーは、ツールボックス・カタログからウィジェットを選択できます。Lotus iNotes ユーザーがウィジェットを参照および選択できるツールボックス・カタログとカテゴリーは、inotes_config.xml で指定します。
- ポリシーで許可されている場合、ユーザーはウィジェットを定義する XML を入力することで、独自のウィジェットを Lotus iNotes に作成できます。
Lotus Notes クライアントを使用したウィジェットの作成については、この記事では触れません。ウィジェット作成の詳細については、Lotus Notes 8.5 Information Center のトピック「Configuring a widget using wizards」を参照してください。
図 9 は、Lotus iNotes ユーザーがツールボックス・カタログからカタログ・ウィジェットを選択し、「ウィジェット」フォルダーに追加する方法を示しています。「使用可能なウィジェット」ウィンドウは、「ウィジェット」フォルダーのコンテキスト・メニューで「ウィジェット・カタログの参照」メニュー項目を選択することにより表示できます。また、図 9 では、ウィンドウの下の Lotus iNotes タブ・パネルに、Google Maps ウィジェットの表示結果が示されています。
図 9. 「ウィジェット」フォルダーにウィジェットを追加する「ウィジェット・カタログの参照」

Lotus iNotes でウィジェットを有効にするには、Lotus Domino 8.5 Administrator クライアントを使用し、前の「Lotus Domino ユーザー・ポリシーの有効化」セクションで説明したユーザー・ポリシーを有効にします。
次に、Data/domino/html ディレクトリーで inotes_config.xml というファイルを編集または作成し、Lotus iNotes ユーザーが選択できるウィジェットが含まれるツールボックス・カタログ・データベースとカテゴリーの名前を指定する toolboxCatalog 要素をこのファイルに追加します。リスト 5 を参照してください。
リスト 5. toolboxCatalog 要素
<?xml version="1.0" encoding="UTF-8" ?> <inotes:extensions xmlns:inotes="urn:x-inotes:ibm.com"> <toolboxCatalog name="toolbox.nsf" categories="iNotes,DWA"/> <webcontextConfiguration version="1.1"> <!-- First default widget here --> </webcontextConfiguration> <webcontextConfiguration version="1.1"> <!-- Another default widget --> </webcontextConfiguration> </inotes:extensions> |
この要素を指定することにより、「ウィジェット」フォルダーで「ウィジェット・カタログの参照」コンテキスト・メニュー項目が有効になり、ユーザーは指定されたカタログ・カテゴリーからウィジェットを「ウィジェット」フォルダーに作成できます。ウィジェット・カタログの参照結果として表示されるのは、ウィジェット文書の「プラットフォーム」フィールドで「iNotes 8.5」が指定されているウィジェットだけです。また、ツールボックス・カタログ・データベースのローカル・レプリカが、iNotes によってアクセスされる Lotus Domino サーバー上に置かれている必要があります。
すべての Lotus iNotes ユーザー用のデフォルト・ウィジェットの指定
システム管理者は、ウィジェットを定義する XML を inotes_config.xml 内の 1 つ以上の <webcontextConfiguration> 要素に含めることにより、各 Lotus iNotes ユーザーの「ウィジェット」フォルダーに表示するデフォルト・ウィジェットを指定できます。ツールボックス・カタログに含まれるウィジェットについては、ウィジェット文書に添付されている extension.xml ファイルから、その XML を取得できます。
Lotus Notes クライアントと Lotus iNotes での HTTP POST の用法の違い
Lotus Notes クライアントと Lotus iNotes では、ウィジェット用の Web ページをロードする HTTP POST フォーム送信メソッドの実装方法が異なります。これは、ブラウザー・アプリケーションの同一オリジン・サーバー・ポリシー (same origin server policy) によって適用されるセキュリティー制限によるものです。
Lotus Notes クライアントは、最初に Web サイトからフォームを埋め込みブラウザーにロードします。次に、必要なパラメーターをフォームの DOM に挿入し、フォーム送信用の JavaScript™ メソッドを呼び出すことにより、そのフォームを送信します。
Lotus iNotes はブラウザー内で実行されるブラウザー・アプリケーションであるため (Lotus Notes クライアントのようなネイティブ・アプリケーション内の埋め込みブラウザー・コンテナーではありません)、Web アプリケーションが Lotus iNotes とは異なるサーバーから提供されている場合は、Web アプリケーションの Document Object Model (DOM) 内の要素にはアクセスできません。この制限は、同一オリジン・サーバー・セキュリティー・ポリシーとして知られています。このため、Lotus iNotes は既知の入力フィールドと値を持つフォーム要素を作成し、Web アプリケーションの代わりに、このフォームを Web アプリケーション・サーバーに送信する必要があります。送信にはフォームのアクション URL を使用し、応答をターゲットの iframe に表示するよう指定します。この結果として、Lotus Notes クライアントがすべての Web サイトのウィジェットをサポートできるのに対し、Lotus iNotes はすべてをサポートできるわけではありません。
Lotus iNotes が使用するフォーム送信用メソッドはいくつかの理由によって失敗することがありますが、一般的なケースは次のとおりです。
- Web アプリケーションが、フォームの送信時に JavaScript コードを実行する必要がある場合。これは、フォームの非表示フィールドの値を設定するコードです。
- Web アプリケーションが nonce (非常に短い期間で変更されるストリング値) を使用している場合。nonce はサービス妨害 (denial-of-service) 攻撃から保護するために POST に含められます。
Lotus Notes 8.0 クライアントを使用して作成したウィジェットは、フォーム・ベースの (HTTP POST) パラメーター送信を使用するときに、フォームのアクション URL を指定しません。Lotus Notes 8.5 では、<formAction> 要素にアクション URL を含めるようウィジェット作成ウィザードが強化されています。この問題により、Lotus Notes 8.0 で作成され、HTTP POST フォーム送信を使用するウィジェットは、Lotus iNotes で機能しない可能性があり、Lotus Notes 8.5 のウィザードを使用して再作成する必要があります。
Lotus iNotes ユーザーに Web エージェントの実行を許可する場合は、Lotus Domino サーバーのクレデンシャルを使用して、ツールボックス・カタログ・データベース内の Web エージェント設計要素を署名する必要があります。この要素がサーバーによって署名されていない場合、Lotus iNotes ユーザーはウィジェット・カタログを参照できません。サーバーの ID でデータベース内の設計文書を署名するには、Lotus Domino Administrator クライアントを使用します。
Lotus Notes クライアントと比較すると、Lotus iNotes でのウィジェットの使用に関しては、いくつかの制限があります。Lotus iNotes ユーザーにカタログ・ウィジェットを利用してもらう前に、Lotus iNotes でテストし、カタログ・ウィジェットがそのプラットフォームで正しく機能するか確認する必要があります。
ウィジェットのカタログ文書の「プラットフォーム」フィールドで「iNotes 8.5」を追加し、このウィジェットを inotes_config.xml で指定されたカテゴリーに追加することにより、Lotus iNotes ユーザーはそのカタログ・ウィジェットを利用できるようになります。ただし、サーバー・パフォーマンスの観点から、プラットフォームの種類でウィジェット・カタログのエントリーを選別することは、カテゴリーで選別するよりも相対的に負荷が高くなるので、サーバー・パフォーマンスを最大限に高めるために、Lotus iNotes ユーザーへのウィジェット表示に使用するカテゴリーには、Lotus iNotes でサポートされていないウィジェットを含めないでください。
Lotus iNotes でウィジェットを使用するときの制限の一覧を以下に示します。
- 現時点では、Web ページ・ウィジェット (providerId="com.ibm.rcp.toolbox.web.provider.WebServicesPalleteProvider" が指定されている <palleteItem> 要素) だけがサポートされています。
- ウィジェットのアクションをワイヤリングするときは、アクションの結果をユーザーに表示する場所を指定できます。Lotus iNotes では、タブ・パネルと新規ブラウザー・ウィンドウだけがアクション・ターゲットとしてサポートされています。現在、サイドバー・パネルと浮動ウィンドウはサポートされていません。アクション・ターゲットは、ウィジェット XML の <actionType> 要素で指定します。ウィジェットの <actionType> 要素で非サポートのターゲットが指定されている場合、出力は Lotus iNotes のタブ・パネルに表示されます。ユーザーはウィジェットの「開く」コンテキスト・メニュー項目で目的のターゲットを選択することにより、アクションのデフォルトの actionType を変更できることに注意してください。
- <contextData> 要素に対してサポートされている唯一の contentTypeId は content.textSelection です。このcontentTypeId は、ウィジェットを構成するためにアクションをワイヤリングするときの「使用するコンテンツを指定してください」における「他のコンテンツ」の「テキスト選択」オプションに対応します。
- Lotus iNotes のタブ・パネル内で Web サイトをナビゲートしているユーザーは、異なる最上位レベルのブラウザー・ページに移動するリンクをクリックする可能性があります。ブラウザーのアーキテクチャーにより、このアクションを Lotus iNotes で発生しないようにする方法はありません。このようなリンクを含む Web サイトにはタブ・パネルを使用しないことが一番で、これらの Web ページは新しいブラウザー・ウィンドウで開いてください。
- 選択したテキストをウィジェットへの入力パラメーターとして渡す目的で Web ページが Lotus iNotes のタブ・ペインに表示されている場合でも、その Web ページが Lotus iNotes 以外のサーバーから提供されたものであれば、ブラウザーのセキュリティー・ポリシーにより、Lotus iNotes は Web ページ内で選択されたテキストを検出することができません。
Lotus iNotes 8.5 のフル・モードには、ブラウザーをベースとする iNotes のエクスペリエンスと Lotus Notes 8.5 がインストールされたクライアントのエクスペリエンスとの間により優れた一貫性をもたらす新機能が導入されています。また、外部データ・サービスへの統合についても同じ機能が追加されるようになりました。この記事では、Lotus iNotes 8.5 フル・モードでの新機能を紹介し、特に Web 2.0 に関連する機能について詳しく説明しました。このシリーズの以降の記事では、Lotus iNotes ライト・モードでの機能強化と管理機能のその他の改良点について説明し、新しい Lotus iNotes ウルトラ・ライト・モードを紹介します。
著者は、この記事の複数のバージョンを編集していただいた Dana St. Clair に感謝します。Dana St. Clair は 2000 年に、IBM/Lotus Software Group の Principal Technical Writer として IBM に入社しました。以降、Lotus Domino Administrator ヘルプなど、多数の文書作成作業に携わりました。現在は、Lotus iNotes のクライアントおよび管理者向けドキュメントと、Lotus Notes のクライアント向けドキュメントを執筆しています。
- ディスカッション・フォーラムに参加してください。
-
Read the developerWorks Lotus article, "New features in IBM Lotus iNotes 8.5: Administration policies and lite mode."
-
Read the developerWorks Lotus article, "Introducing IBM Lotus Domino 8.0.1 Web Access Lite mode."
-
Read the developerWorks Lotus article, "Enabling secure, remote access to IBM Lotus iNotes using IBM Lotus Mobile Connect."
-
Refer to the IBM Redbooks® publication, "iNotes Web Access: Deployment and Administration."
-
Refer to the IBM Redbooks publication, "Domino Web Access 6.5 on Linux."
-
Refer to the IBM Support Techdoc, "Key Content Resources for Lotus Mobile Connect."
-
Refer to the support pages for IBM Lotus Domino Web Access.
Seolyoung Park joined IBM in 1994 and has worked on a number of projects including IBM Lotus Workplace and Domino. She is currently a member of the Lotus iNotes development team working on Web 2.0 initiatives.
Chuck Dumont joined IBM in 1985 and has worked on a number of projects including OS/2, OpenDoc, and Lotus Domino. He is currently a member of the Lotus iNotes development team, working on Web 2.0 initiatives.
Vinod Seraphin is a Senior Technical Staff Member and lead architect for Lotus iNotes, which was "born" from Vinod's prototyping efforts to develop a compelling personal information manager (PIM) within a browser. He has been with IBM since 1991. Prior to working with Lotus Domino Web Access, Vinod was the Software Architect for Lotus Organizer®.