本文へジャンプ

Lotus  >  Lotus Developer Domain  >  
   
 

IBM Workplace Designer の概要

 
   
 
コンテンツ
Workplace Designer とは?
コンポーネント
フォーム
UI コントロール
イベント
スクリプティング
デプロイメント
Workplace Designer のその他の機能
新しく、使いやすい IBM Workplace Designer
リソース
筆者について(原文のまま)
Donald Russell
Advisory QA Engineer, IBM Corporation
レベル:初級
原文の掲載:2005年8月23日
原文はこちら


IBM Workplace Designer は、Lotus Domino Designer のような機能と能力を IBM Workplace の世界にもたらすアプリケーション開発ツールです。この記事では、IBM Workplace Designer について説明します。


多くの企業では、ビジネス・ソフトウェア・プラットフォームは、それ自身を使用して開発できるアプリケーションと同じように役立ちます。IBM はこの点に注目し、標準ベースの開発ツールである IBM Workplace Designer 2.5 を発表しました。IBM Workplace Designer 2.5 を使用すると、IBM Workplace 製品群のリリース 2.5 に対応するコンポーネントを迅速かつ容易に開発できます。これらのコンポーネントは、IBM Workplace アプリケーション内で、任意の Web ブラウザーから利用できます。



この記事では、Workplace Designer 2.5 について解説します。まず、Workplace Designer の概要に触れ、どのような方法で Workplace アプリケーションを作成するのかを簡単に説明します。次に、Workplace Designer の豊富な機能の中からいくつかの機能を取り上げて、詳しく説明します。この記事は、Web アプリケーション開発の経験がある方を対象に書かれています。IBM Workplace 製品 (IBM Workplace Collaboration Services 2.5 および IBM Workplace Services Express 2.5 など) の経験も役に立ちます。より詳細な内容については、IBM Workplace resource center を参照してください。また、IBM による Workplace Designer の開発の詳細については、developerWorks の Lotus 記事『Workplace Designer の設計: IBM Workplace Designer 設計チームへのインタビュー』を参照してください。

上に戻る

Workplace Designer とは?

バックグラウンドに Notes/Domino でのプログラミング経験があると、Workplace Designer は Domino Designer タイプのアプリケーション開発機能を IBM Workplace に与えるツールであると考えられます。実際に、Domino Designer に慣れている人は、後述する IBM Workplace の機能と概念に似ている部分が数多くあることに気づくでしょう。この類似点は偶然の一致ではなく、Workplace Designer は Domino Designer を念頭に置いて作成されています。このため、Domino での経験がある開発者は、既存のスキルを活用して、IBM Workplace 向けの新しいアプリケーションをすばやく作成できます。Workplace Designer の画面ショットを図 1 に示します。

図 1. Workplace Designer

しかし、Workplace Designer は、Domino Designer を置き換えることが目的ではありません。Domino Designer は、Notes/Domino 環境内におけるアプリケーション開発用の主要ツールとして、今後も利用可能です。Workplace Designer を使用すると Notes/Domino の開発者の専門的なスキルを IBM Workplace 製品にまで拡張できます。(Domino Designer 7 の最新リリースでの新機能については、developerWorks の Lotus 記事『New features in Lotus Notes and Domino Designer 7.0』を参照してください。)

Domino Designer のような開発プラットフォームでの経験があまりなくても、Workplace Designer を使用すると、Java の詳しい知識を必要とせずに、コラボレーティブなコンポーネントを作成する文書ベースのプログラミングを簡単に行うことができます。Workplace Designer の基礎となる J2EE テクノロジーは表面には現れないので、実働アプリケーションの作成には、この領域の専門性は必要ありません。Java のパワーと柔軟性が必要な場合は、拡張 API を使用することにより、IBM Workplace サーバーが提供するデータとサービスにアクセスできます。カスタマイズとコードへの直接のアクセスが不可欠な開発者は、Rational Application Developer などのツールを使用できます。Workplace Designer には数多くの拡張ポイントがあります。経験豊かな Java 開発者は、これらの拡張ポイントを使用して、Rational Application Developer や他の IBM ツールによって作成されたコードを共有できます。


Workplace Designer の内部

内部的に、Workplace Designer で作成されたコンポーネントには、IBM Workplace で使用される MVC (Model、View、Controller) アーキテクチャーをサポートする設計要素が含まれます。また、デプロイされたコンポーネントによって作成されるすべての文書は、XML 文書としてリレーショナル・データベースに保存されます。これらの文書は XSD スキーマで定義され、XPath 言語を介してアクセスできます。Workplace Designer には、スキーマを変更するスキーマ・エディターが含まれています。

Workplace Designer アプリケーションは、Notes データベースのように自己完結型ではない点に注意してください。Notes/Domino で設計したアプリケーションは、すぐにデプロイして実行できます。Workplace では、コンポーネントはそれを実行する Workplace サーバーにデプロイする必要があり、このコンポーネントを 1 つ以上の Workplace 複合アプリケーションに組み込むために追加のセットアップを実行しなければなりません。

Eclipse 3.0 に基づく Workplace Designer は、IBM Workplace Collaboration Services 2.5 および IBM Workplace Services Express 2.5 に完全に統合されています。(詳細については、developerWorks の Lotus 記事『IBM Workplace Services Express の概要』を参照してください。)Workplace Designer は、IBM Workplace Managed Client 上にインストールされます。Workplace Designer には、IBM Workplace Collaboration Services 2.5 および WebSphere Portal への開発ライセンスが含まれていて、テストの実施およびテンプレートとアプリケーションへの組み込みのために、コンポーネントをサーバーにシームレスにデプロイすることができます。開発者は Workplace サーバーで認証され、IBM Workplace クライアントからツールを起動できます。コンポーネントは、Workplace Builder と共に使用できます。

Workplace Designer には、次の業界標準が組み込まれています。

  • データのアクセスと交換のための XML
  • ポータル開発のための HTML/CSS
  • プログラム言語としてのJavaScript

ワークステーションでは、Workplace Designer は Linux および Microsoft Windows 2000 または XP 上の IBM Workplace 内で実行されます。サーバーでは、Workplace Designer アプリケーションは、サポート対象のすべてのプラットフォーム上の Workplace Services Express 2.5 および Workplace Collaboration Services 2.5 で実行されます。

Workplace Designer は、IBM Cloudscape、DB2、Oracle、および Microsoft SQL Server を含むいくつかのデータベース・プラットフォームをサポートします。また、Workplace Designer は、IBM Workplace 製品によってサポートされる LDAP サーバーをサポートします。

Workplace Designer の最初のリリースには、使い始めるために必要なすべての内容が揃っています。

  • 製品コード
  • マニュアルとチュートリアル
  • サンプル・アプリケーション・コード
  • 開発中のアプリケーションをプリビューおよびテストする IBM Workplace Collaboration Services
  • IBM Cloudscape(IBM Workplace Collaboration Servicesの一部として)

Workplace Designer の機能

Workplace Designer 2.5 には、次のような機能があります。

  • Workplace サーバー上の 1 つのポートレットを構成するコンポーネント群 (フォーム、スキーマ、スクリプト、およびイメージの集まり)。
  • 設計要素。Workplace Designer の一部で、コンポーネントを視覚的に作成または変更することができます。
  • 情報の入力および各種データ・ソースからのデータ表示を行うフォームを作成するフォーム・エディター。フォームはコラボレーティブなシステムにおける重要な要素で、情報を収集および処理する柔軟な方法を提供します。フォームはユーザー・インターフェースのメインとなる要素で、アプリケーションのインターフェースを構成するコントロールを保持しています。フォームを使用して、文書内に格納されているデータを作成、編集、および表示します。
  • 利用可能なすべての UI コントロール/コンポーネントを提供する UI 制御パレット。UI コントロールは、フォーム上でユーザーがデータを使用することを可能にする視覚的な要素です。UI コントロールには、編集フィールド、ボタン、ドロップダウンリスト、およびリンクがあります。
  • 完全なプログラミング機能を備えたイベント。ボタンのクリック、フィールド・イベント、文書を開くまたは閉じるときのイベントなどがあります。
  • 完全な JavaScript インターフェースから組み込み関数に至るまでのスクリプティング機能。これには、スクリプト・エディターが含まれています。また、構文の色分け、先行入力など、Eclipse スクリプト・エディターが持っている多数の機能もサポートされています。
  • テストおよび実働用のデプロイメントを容易にする機能。
これらの各機能については、以降のセクションで詳しく説明します。

上に戻る

コンポーネント

前のセクションで説明したように、Workplace Designer コンポーネントは、ポートレットを構成するフォーム、スクリプト、および他の要素の集まりです。(Workplace アプリケーションは、1 つ以上のポートレットによって構成されます。)Workplace Designer を使用すると、コンポーネントを作成してポートレットとして Workplace サーバーにデプロイし、さらに Workplace アプリケーションに追加することができます。これらのアプリケーションは、Web ユーザーに公開され、利用可能になります。新しいコンポーネントは、まったく新規に作成するか、既存の Domino データベースをスターティング・ポイントとしてインポートし、これを利用して作成します。コンポーネント内のイベントに関連するスクリプトを書くこともできます。これを行うには、コンポーネント・イベントを選択し、そのイベント用のスクリプトを記述します。(スクリプティングとイベントについては後述します。)

Workplace Designer コンポーネントは、Workplace アプリケーション用のロールに基づくセキュリティー・モデルをサポートします。コンポーネントをデプロイし、アプリケーションまたはアプリケーション・テンプレートに追加した後、コンポーネントのロールを特定の Workplace アプリケーションのロールにマッピングすることにより、コンポーネントへのアクセス権を設定できます。たとえば、テンプレートのロールの [投稿者] をコンポーネントのロールの [読者] にマッピングすると、アプリケーションへの [投稿者] のアクセス権を持つユーザーは、コンポーネントに対して [読者] のアクセス権を持つことになります。

Workplace Designer には、Workplace アプリケーションで使用されるコンポーネントを Workplace サーバーに簡単にデプロイする機能があります。これには、Workplace Designer でのデプロイメント・プロファイルの作成も含まれます。詳細については、Workplace Designer のオンラインヘルプを参照してください。

上に戻る

フォーム

Notes/Domino のフォームと同様に、Workplace Designer のフォームも、IBM Workplace コンポーネントとの対話を行うメインのユーザー・インターフェースです。フォームを使用すると、ユーザーと設計者は情報を入力または表示できます。コンポーネントは多数のフォームから構成されているかもしれません。現在のコンポーネント内で、フォームからフォームにユーザーを誘導する為に、コンポーネント開発者はフォームのプロパティーやUIコントロールを利用できます。

フォームは、Workplace Designer の中心となる設計要素です。Notes/Domino のアプリケーション開発には、ビュー、エージェントなど、スタンドアロンの設計要素がたくさんあります。しかし、Workplace Designer には、1つの基本要素であるフォームだけがあります。ビューを作成するには、そのビューをフォームに埋め込む必要があります。Notes/Domino のエージェントに対応する Workplace の要素を実行するには、その要素をフォーム上のイベントして作成します。また、Notes/Domino では、データをフォーム設計の一部として定義します。Workplace Designer では、データを個別のスキーマとして定義し、UI コントロールをこのスキーマ要素にバインドします。フォームの設計時に既存のスキーマがない場合は、UI コントロールのデータ・バインディングを指定したときに、Workplace Designer によってスキーマが作成されます。フォームを作成する前に、コンポーネントを作成する必要があります。

Workplace Designer では、いくつかの方法で新規フォームを作成できます。空のフォームから開始する、Domino データベースからフォームをインポートする、または既存のフォームをコピーするなどの方法があります。新規の空のフォームを作成するときは、フォームの名前とコメントの入力を求められます。また、スキーマの扱いも次の中から選択する必要があります。

  • このフォーム用のスキーマを作成
  • 既存のスキーマを使用
  • スキーマを使用しない

フォーム・エディター

フォームの作成、表示、編集の為に Workplace Designerではフォーム・エディターが実装されています(図1)。このグラフィカル・エディターを使用すると、UI コントロール、ボタン、グラフィックなどの要素を配置できます。これらの要素を追加するには、UI コントロール・パレットを使用します (次のセクションで説明します)。これらの要素は、ドラッグアンドドロップでフォーム内に追加します。

Workplace Designer では、いくつかのレベルでデータを検証できます。フィールド・レベルの検証では、フィールドの型と許可されている値をチェックします。検証プロセスに複数のフィールドが含まれるときは、文書レベルの検証を使用します。検証は、そのタイプに応じて、データを送信する前にクライアントで実行されるか、バックグラウンドの文書を更新する前にサーバーで実行されます。

図 2. 新規フォーム・ダイアログ

上に戻る

UI コントロール

UI コントロールは、Workplace Designer における重要な概念です。ユーザーが対話できる要素として、視覚的な要素 (たとえば、ボタンやリンクなど) があります。Workplace Designer には、さまざまな種類の UI コントロールのセットが組み込まれていて、各 UI コントロールをフォームに追加できます。たとえば、UI コントロールとして、編集ボックス、複数行編集ボックス、ボタン、リストボックス、コンボボックス、チェックボックス、ラジオボタン、リンク、計算結果フィールド、イメージなどがあります。これらの UI コントロールへは、フォーム・エディター・インターフェースの右上のセクションにある UI コントロール・パレットを介してアクセスします (図 3)。

図 3. UI コントロール・パレット

UI コントロール・パレットで UI コントロールを選択し、設計中のフォームに挿入します。

ビュー・コントロール

先ほど触れたとおり、Workplace Designerと異なる点の1つは、ビューの扱いにあります。ビューは、文書の集まりを表示する為にフォームに追加されるUIコントロールです。Workplace Designerでは、ビューはフォームを通してコントロールされます。ビューを作成する為に、フォームにビュー・コントロールを挿入し、1つもしくはそれ以上のスキーマと個別のフィールドを、ビューに関連付ける必要があります。ビュー・コントロールは、最終的に存在するデータから、ビューのプレゼンテーションを分離する手段を提供します。ビュー・コントロールをフォームに挿入した後、コントロールのフォーマットを変更すること、他のユーザー・インターフェース・コントロールに類似させたり、スタイルや個別のフォーマットのプロパティーを使用したりすることができます。



コンテナー・コントロール

コンテナー・コントロールは (名前が示すように)、他の UI コントロールを格納する UI コントロールです。コンテナー・コントロールには、次の 3 つのタイプがあります。

  • パネルはフォーム上の長方形の領域で、中心となるコントロールをこの中に追加できます。パネルを複数のフォーム間で再利用し、「ルックアンドフィール」を統一したり、設計時間を短縮することができます。
  • 表は個々のセルを含みます。表のセルにはコントロールを追加できます。
  • ビューはフォーム上の長方形の領域で、定義済みのクエリーに基づいて XML から抽出したデータの行と列を含みます。
上に戻る

イベント

どの開発環境にも不可欠なのがイベント処理です。Workplace Designer は、次に示すいくつかのタイプのイベント・コントロールをサポートしています。

  • UI コントロール・イベント。各 UI コントロールは、クライアントサイド・イベントを持つことができます。たとえば、ボタンは「on click」イベントを生成します。コードは、サーバーサイドまたはクライアントサイドのいずれかで実行されます。
  • コンポーネント・イベント。これらは IBM Workplace 標準イベントです。たとえば、コンポーネントのインスタンスが生成されるときのイベントや、Workplace アプリケーションにメンバーが追加または削除されるときのイベントです。これらのイベントは、イベント・グローバル・プロパティを用いてコンポーネント・レベルで定義および処理されます。
  • フォーム・イベントと文書イベント。フォーム・イベントは、open、close、onSave、postSave など、編集コントロール上のイベントをサポートします。文書イベントは、フォーム・イベントと同じイベントをサポートします。

上に戻る

スクリプティング

前述したように、Workplace Designer には、アプリケーション開発用の完全な JavaScript スクリプティング環境が含まれています。この環境によって、理解しやすい言語で比較的複雑なプログラムを作成できます。スクリプトは、サーバーまたはクライアントのいずれかで実行できます。

スクリプティング環境には、再利用可能なコードを保管するスクリプト・ライブラリーがあります。Workplace Designer の JavaScript インタープリターには、主要なすべての IBM Workplace API を公開する定義済みのネイティブ・ライブラリーが備えられています。(JavaScript インタープリターは、任意の Java API を直接呼び出すことができる Java ブリッジとしても機能します。)また、再利用可能なスクリプト・コードを含む独自のスクリプト・ライブラリーを作成したり、コンポーネント間でスクリプト・ライブラリーをコピーすることも可能です。

Workplace Designer のスクリプティング環境には、スクリプト・エディターも含まれています (図 4 参照)。

図 4. JavaScript エディター


このエディターは Eclipse スクリプト・エディターに基づいていて、構文の色分け、先行入力 (コード補完)、JavaScript クラスの参照などの機能を持ちます。

上に戻る

デプロイメント

Workplace Designer には、作成したコンポーネントを Workplace サーバーへデプロイすることを補助する機能があります (図 5 参照)。


図 5. [デプロイメント・プロファイルの編集] 画面



サーバーにデプロイしたコンポーネントは、Workplace アプリケーションおよびアプリケーション・テンプレートに追加できます。

上に戻る

Workplace Designer のその他の機能

これまでに説明した機能の他にも、Workplace Designer には次の機能があります。


サンプル・アプリケーション

Workplace Designer には、IBM Workplace アプリケーション開発に習熟するためのサンプル・アプリケーションが含まれています。また、無料でダウンロードし、自由に改変できる他のアプリケーションが、IBM によって Web 経由で提供されます。


マニュアルとチュートリアル

機能と関数が記載されたオンラインヘルプに加え、Workplace Designer には次のマニュアルが含まれています。

使い始めるまでの手順を簡潔に説明するスタートアップ・マニュアル。
  • IBM Workplace コンポーネントの構築方法をステップバイステップで説明するチュートリアル。
  • ツールとそのモジュールについて解説されている IDE リファレンス。
  • パブリック API、使い方、サンプル・コードが記載された API リファレンス

上に戻る

新しく、使いやすい IBM Workplace Designer

これまでに見てきたように、Workplace Designer は、IBM Workplace プラットフォームでのアプリケーション開発に興味のあるユーザーに、数多くのものを提供します。経験豊富な Domino 開発者は、Domino Designer と同じように機能し、業界標準のテクノロジーに基づく環境で、現在のスキルを活用できます。また、高度なプログラマーが、Java ベースのツールと統合した Workplace Designer の拡張性を利用する一方で、Java の知識を持たない経験の少ないプログラマーでも、スクリプト・インターフェースを使用してフル機能のプログラムを作成できます。

ユーザーのバックグラウンドにかかわらず、Workplace Designer は Workplace アプリケーションを作成するための、使いやすく、かつ強力なツールをもたらします。IBM Workplace Designer のさらに詳しい情報については、IBM Workplace resource center を参照してください。


上に戻る

リソース

上に戻る

筆者について(原文のまま)


Dick McCarrick is a content developer for developerWorks: Lotus. Previously he was a member of the Domino/Notes Documentation team for over 11 years, playing a variety of roles in documenting many major components of Domino and Notes. He also wrote the occasional article for Iris Today (including Ask Professor INI) before joining the Notes.net/Lotus Developer Domain team permanently in 2002. In his spare time, Dick's leisure activities include running, fishing, woodworking, and reading about the natural sciences. An avid astronomer, he's former director of the Bridgewater (Mass.) State College Observatory. Dick lives in Vermont.
上に戻る