このセクションでは、アプリケーション固有のビジネス・オブジェクトのビジネス・オブジェクト定義を、Object Discovery Agent (ODA) を使用して生成する方法について説明します。
ODA を持つアダプターをインストールすると、ODA は自動的にインストールされます。カスタム・アダプターを開発しており、ODA を使用してビジネス・オブジェクト定義を作成する場合は、Object Discovery Agent Development Kit (ODK) を使用して開発できます。
カスタム ODA の開発については、Object Discovery Agent の開発を参照してください。
ODA の構成と実行には、Business Object Designer のビジネス・オブジェクト・ウィザードを使用します。ビジネス・オブジェクト・ウィザードは、ODA に対するグラフィカル・ユーザー・インターフェースであり、検出やコンテンツ生成のプロセスの管理を行います。このセクションの内容は次のとおりです。
ODA を実行する前に、次の各項目にあてはまることを確認してください。
ODA を開始するには、ODA に必要なファイルがご使用のシステムにあることを確認しておく必要があります。ODA を持つ定義済みアダプターをインストールすると、必要な ODA システム始動ファイルが自動的にインストールされます。カスタム ODA を持つカスタム・アダプターを開発している場合、必要な ODA システム始動ファイルはその ODA の開発の過程で作成されます。ただし、始動スクリプトがあるかどうか、およびご使用の ODA に適したものであるかどうかを確認することをお勧めします。
各 ODA は、それぞれ始動スクリプト を必要とします。始動スクリプトは、ODA の実行を開始するものです。
ODA を最初に開始する前に、始動スクリプト内の変数が正しく設定されていることを確認しておく必要があります。シェル・ファイル (start_ODAname.sh) またはバッチ・ファイル (start_ODAname.bat) を編集できるように開き、表 10 の説明どおり値が正しく設定されていることを確認してください。
表 10. ODA シェル・ファイルおよびバッチ・ファイルの構成変数
変数 | 説明 | 例 |
---|---|---|
set AGENTNAME | ODA の名前 | set AGENTNAME=ODAname |
set AGENT | ODA の JAR ファイルの名前 |
WINDOWS:
set AGENT = %ProductDir%¥ODA¥srcDataName¥ODAname.jar
|
set AGENTCLASS | ODA の Java クラスの名前 | set AGENTCLASS=com.ibm.oda.srcDataName.ODAname |
ODA の名前 (ODAname) とソース・データ名 (srcDataName) については、ODA の名前付けを参照してください。
Windows オペレーティング・システムの場合、次の始動スクリプトを使用して ODA を開始できます。
Windows |
---|
start_srcDataNameODA.bat |
Business Object Designer Express のビジネス・オブジェクト・ウィザードを使用して、ODA を構成および実行します。ビジネス・オブジェクト・ウィザードは、各スクリプト・ファイルまたはバッチ・ファイルの AGENTNAME 変数に指定されている名前を基に各 ODA を探し出します。
ODA を開始したら、Business Object Designer Express を開き、構成して実行する必要があります。Business Object Designer Express を開く方法については、Business Object Designer Express の開始を参照してください。Business Object Designer Express にはビジネス・オブジェクト・ウィザードがあり、このウィザードに従うと順を追って ODA を実行できます。
ビジネス・オブジェクト・ウィザードを開始するには、以下の手順を実行します。
ビジネス・オブジェクト・ウィザードが開始され、ウィザードの最初のダイアログ・ボックス (「エージェントの選択」) が表示されます。表 11 に、ビジネス・オブジェクト・ウィザードのステップについて要約します。
作業 | ビジネス・オブジェクト・ウィザードのステップ | |
---|---|---|
1. | 必要な ODA を選択する。 | ステップ 1: エージェントの選択 |
2. | 構成プロパティーを取得します (開くデータ・ソースを記述する構成プロパティーも含めて)。 | ステップ 2: エージェントの構成 |
3. | ODA によるコンテンツ生成の対象となるソース・データを取得する。 | ステップ 3: ソースの選択 |
4. | 選択されたソース・ノードがコンテンツ生成に使用したいノードであることを確認する。 | ステップ 4: ソース・ノードの確認 |
5. | コンテンツ生成プロセスを開始する。 | ステップ 5: ビジネス・オブジェクトの生成中 |
|
| ビジネス・オブジェクト・プロパティー |
6. | ビジネス・オブジェクト定義をユーザー指定のフォーマットで保管する。 | ステップ 6: ビジネス・オブジェクトの保管 |
ビジネス・オブジェクト・ウィザードによる ODA 実行の例については、サンプル ODA の使用を参照してください。
ローマ軍兵士のデータ (XML 形式) をビジネス・オブジェクト定義に変換するサンプル Object Discovery Agent が、IBM から提供されています。ODA の使用方法を十分に理解できるように、このサンプル ODA を使用して、ビジネス・オブジェクト定義の生成方法を以下に段階的に説明します。
このセクションでは、次の作業について説明します。
Adapter Development Kit (ADK) がインストールされている場合、サンプル ODA とそれを実行するためのファイルは、製品ディレクトリーの下の DevelopmentKits¥Odk¥Samples ディレクトリーに格納されています。サンプル ODA を実行するためのファイルは、ご使用のオペレーティング・システム環境によって異なります (表 12 を参照)。
表 12. サンプル Roman Army ODA の始動スクリプト
オペレーティング・システム | 始動スクリプト |
---|---|
Windows | start_Agent4.bat |
サンプル Roman Army ODA には 5 つのバージョンがあるため、すべての始動スクリプトが start_AgentX という名前の 1 つの共通始動スクリプトを呼び出し、スクリプトに ODA クラス名を渡します (この名前は start_AgentX 内の AGENTCLASS 構成変数に割り当てられます)。つまり、start_Agent4 始動スクリプトは start_AgentX に対する呼び出しを含み、このスクリプトに次のパスを ODA クラス名として渡します。
com.ibm.btools.ODK2.RomanArmy.ArmyAgent4
このサンプル ODA の構成変数を検証するには、start_AgentX バッチ・ファイルまたはスクリプト・ファイルを調べて、構成変数が表 13 の構成変数と一致していることを確認します。サンプル Roman Army ODA のバージョン 4 が使用するファイルを移動するときは、対応する構成変数も必ず変更してください。
表 13. サンプル Roman Army ODA の構成変数
変数 | サンプル Roman Army ODA 用の値 |
---|---|
AGENTNAME | set AGENTNAME=Roman |
AGENT |
WINDOWS:
set AGENT = %ProductDir%¥DevelopmentKits¥Odk¥Samples¥RomanArmy¥ArmyODA.jar
|
FILE_LOCATION |
WINDOWS:
set FILE_LOCATION = %ProductDir%¥DevelopmentKits¥Samples¥Odk¥RomanArmy¥RomanArmy.xml
|
重要 |
---|
接続を試みる前に、ビジネス・オブジェクト・ウィザードを使用してサンプル ODA を起動しておく必要があります。ビジネス・オブジェクト・ウィザードは、起動済みの ODA のみを探し出します。 |
ビジネス・オブジェクト・ウィザードを開始するには、以下の手順を実行します。
ビジネス・オブジェクト・ウィザードは、ウィザードの最初のダイアログ・ボックス (「エージェントの選択」) を表示します。このダイアログ・ボックスを図 34 に示します。
ビジネス・オブジェクト・ウィザードは、ODA の始動スクリプトまたはバッチ・ファイルの AGENTNAME 変数に指定されている名前を基に、実行されている ODA のそれぞれを識別します。ここでのサンプル ODA の名前は Roman です。
ビジネス・オブジェクト・ウィザードが選択内容を「エージェント名」として表示します。また、ODA のホスト名とポート番号を指定して、ODA を検索することもできます。
ODA が開始済みの場合、ビジネス・オブジェクト・ウィザードは、ODA への接続時に、図 35 に示す状況ウィンドウを表示します。
このダイアログ・ボックスには、データ・ソースへのアクセスおよび ODA の初期化に必要な ODA 構成プロパティーが表示されます。
ODA の必須構成領域の 1 つに、ロギングとトレースをセットアップするための領域があります。詳しくは、ロギングとトレースの設定 を参照してください。
各 ODA を最初に使用するときには、その ODA の各構成プロパティーの値を指定する必要があります。この後、「保管」をクリックすることにより、指定した名前のプロファイルにプロパティー値を保管することができます。
次に同じ ODA を使用するときには、保管済みのプロファイルを「プロファイルを選択」ボックスから選択できます。詳しくは、"値の入力とプロファイルの保管"を参照してください。
「ソースの選択」ダイアログ・ボックスには、ソース・ノード階層 が表示されます。これは、トップレベルのオブジェクトが最上位に配置され、その下に子オブジェクトが配置される、ツリー構造です。通常、「ソースの選択」ダイアログ・ボックスの初期表示には、トップレベルのソース・ノードのみが表示されます。
重要 |
---|
「次へ」をクリックしても ODA が動作しない場合は、MessageFile 構成プロパティーに指定されている ODA メッセージ・ファイルが ProgramDir¥ODA¥messages ディレクトリーにあるかどうかを確認してください。ここでのサンプル ODA の場合、このメッセージ・ファイルのデフォルトの名前は RomanAgent.txt です。詳しくは、ODA メッセージ・ファイルの指定 を参照してください。 |
ソース・ノード階層のノードになるのは、テーブル名、ビジネス・オブジェクト名、スキーマ、または関数です (ODA のデータ・ソースによって異なります)。ここでのサンプル ODA は、RomanArmy.xml という名前の XML ファイルに含まれるオブジェクトから、ノードを生成します。図 37 に、Army general 構成プロパティー (図 36 を参照) に指定されているローマ軍将官に対応する、単一のトップレベルのソース・ノードを示します。
図 38. ソース・ノードが展開および選択された「ソースの選択」ダイアログ・ボックス
ソース・ノードを展開してその子ノードを表示するには、次のいずれかの操作を行います。
このダイアログ・ボックスでは、どのソース・ノードを選択したかを確認できます。選択したソース・ノードは、太字で表示されます。図 40 では、Cordius、Cicero、および Vulso に対応するソース・ノードが選択されています。
図 40. 生成するビジネス・オブジェクト定義の対象になるオブジェクトの確認
選択に誤りがあった場合には、「戻る」をクリックして直前のダイアログ・ボックスに戻り、必要な変更を加えます。
この画面は、ODA がビジネス・オブジェクト定義を生成中であることをユーザーに通知します。
ODA に追加情報を指定する必要がある場合、ビジネス・オブジェクト・ウィザードは「BO プロパティー」ダイアログ・ボックスを表示し、ユーザーにその情報を入力するように促します。
ただし、ここでのサンプル ODA には、追加情報は必要ありません。「BO プロパティー」ダイアログ・ボックスについて詳しくは、追加情報の指定を参照してください。
このダイアログ・ボックスには、ODA によって生成されたビジネス・オブジェクト定義を保管できる、以下のオプションが用意されています。
重要 |
---|
ODA がビジネス・オブジェクト定義を生成するときに、キー要素が特定されていない データ・ソース・オブジェクトが生成元のオブジェクトになっていると、生成されたビジネス・オブジェクト定義はキー属性を持ちません。どのビジネス・オブジェクトも、少なくとも 1 つのキー を持っていなければなりません。キーを持たないビジネス・オブジェクト定義が ODA によって生成されたおそれがある場合には、ビジネス・オブジェクト定義を保管する代わりに、「別のウィンドウで新規ビジネス・オブジェクトを開く」オプションを選択するようにします。Business Object Designer Express では、各ビジネス・オブジェクト定義にキー属性があるかどうかを検証して、ない場合にはキー属性を追加することができます。Business Object Designer Express では、キーを持たないビジネス・オブジェクト定義は保管できません。 |
「完了」 をクリックしてビジネス・オブジェクト定義を保管します。または、「キャンセル」 をクリックし、定義を保管しないで終了します。どちらの場合も、ビジネス・オブジェクト・ウィザードは ODA から切断されます。このダイアログ・ボックスには、ビジネス・オブジェクト・ウィザードに、ODA からの切断後 ODA をシャットダウンさせるオプションもあります。ODA を引き続き使用する必要がない場合は、このオプションを選択します。
ビジネス・オブジェクト定義をファイルに保管するオプションを選択した場合、「完了」をクリックすると、参照ウィンドウが開き、そのファイルの名前、保管場所、および使用するフォーマット (テキスト・ファイルまたは InterChange Server Express 固有のフォーマット) を指定できます。
以上で、Object Discovery Agent を使用することによりビジネス・オブジェクト定義が正常に作成されました。
ODA の構成値のセットをプロファイルに保管して、その ODA を将来使用するときに利用できるようにすることができます。プロファイルを保管するには、以下の手順を実行します。
ビジネス・オブジェクト・ウィザードによって、プロファイルが次のディレクトリーに保管されます。
C:¥Documents and Settings¥All Users¥Application Data¥CrossWorlds¥ BusObjDesigner¥profiles.bod
ODA を構成する際には、ロギングとトレースをセットアップしなければなりません。ODA のロギングとトレースに関する情報は、ビジネス・オブジェクト・ウィザードの「エージェントの構成」ダイアログ・ボックスで指定します。ビジネス・オブジェクト・ウィザードには、表 14 に示す ODA の標準構成プロパティーが必ず表示されます。
プロパティー名 | プロパティーの型 | 説明 |
---|---|---|
TraceFileName | String | ODA がトレース情報を書き込む先のファイルを指定。詳しくは、"トレース・ファイルとトレース・レベルの指定"を参照してください。 |
TraceLevel | Integer |
ODA に適用されるトレース・レベル。詳しくは、"トレース・ファイルとトレース・レベルの指定"を参照してください。
|
MessageFile | String | ODA のエラー/メッセージ・ファイルの名前。このプロパティーを使用して、既存のファイルの確認や指定をします。詳しくは、"ODA メッセージ・ファイルの指定"を参照してください。 |
このセクションの内容は次のとおりです。
図 43 は、ビジネス・オブジェクト・ウィザードの「エージェントの構成」ダイアログ・ボックスを示しています。トレース・ファイルの名前とトレース・レベルの指定は、このダイアログ・ボックスで行います。
TraceFileName 構成プロパティーは、ODA のトレース・ファイル の名前を指定します。
このファイルは、ODA が記録するすべての トレース・メッセージおよびエラー・メッセージの記録先になります。デフォルトでは、トレース・ファイルには次の命名規則に基づく名前が ODA ランタイムによって付けられます。
ODAnametrace.txt
ここで、ODAname は、ODA を一意的に識別できる名前です。詳しくは、ODA の名前付け を参照してください。例えば、ODA の名前が HTMLODA である場合、HTMLODAtrace.txt という名前のトレース・ファイルが生成されます。
指定されたトレース・ファイルが存在しない 場合、ODA は、そのファイルを ODA のランタイム・ディレクトリー (製品ディレクトリーの ODA¥srcDataName サブディレクトリー) 内に作成します。指定されたトレース・ファイルが既に存在する場合、ODA はそのファイルに追記します。ODA を構成するときに TraceFileName プロパティーを再設定することで、別のトレース・ファイル名を指定することができます。
TraceLevel 構成プロパティーは、ODA のシステム・トレース・レベル を指定します。
ODA のトレース・メソッドは、メッセージのトレース・レベルがこのシステム・トレース・レベルよりも低いか等しい場合に、指定されたメッセージをトレース・ファイルに送信します。
したがって、記録されたトレース・メッセージに含まれる情報の詳しさは、システム・トレース・レベルによって決まります。トレース・レベルとそれに対応する動作を表 15 に示します。
ODA でのトレース・メッセージの生成方法については、トレース・メッセージとエラー・メッセージの処理を参照してください。
MessageFile 構成プロパティーは、ODA のメッセージ・ファイル の名前を指定します。
ODA のエラー・メッセージとトレース・メッセージは、この ODA メッセージ・ファイルに格納しておくことができます。ODA 自体にメッセージ・テキストを作成する代わりに、ファイルに格納したメッセージをメッセージ番号で検索できます。メッセージをメッセージ・ファイル内に分離することで、ODA が使用される可能性があるさまざまなロケールの言語に、ODA メッセージを容易に翻訳できるようになります。
デフォルトでは、メッセージ・ファイルには次の命名規則に基づく名前が ODA ランタイムによって付けられます。
ODAnameAgent.txt
ここで、ODAname は、ODA を一意的に識別できる名前です。詳しくは、ODA の名前付け を参照してください。例えば、ODA の名前が HTMLODA である場合、MessageFile プロパティーの値は、デフォルトでは HTMLODAAgent.txt になります。メッセージ・ファイルは、次のメッセージ・ファイル・ディレクトリー内になければなりません。
ProductDir¥ODA¥messages
重要 |
---|
ODA は、指定されたメッセージ・ファイルが存在しない 場合や、メッセージ・ファイル・ディレクトリー内にない場合には、実行時例外を生成します。ODA の実行に進む前に、MessageFile に指定されているメッセージ・ファイルが存在することを確認してください。 |
別のファイルを ODA のメッセージ・ファイルとして使用する場合は、MessageFile プロパティーを設定して、別のトレース・ファイル名を指定してください。
米国英語以外のロケールを使用している場合は、ファイル名にロケールの名前を含む ODA メッセージ・ファイルをビジネス・オブジェクト・ウィザードが自動的に参照します。
ODAnameAgent_locale.txt
locale の書式は「ll_TT」です。ll は 2 文字の言語名 (小文字)、TT は 2 文字の国名または地域名 (大文字) です。例えば、HTMLODA という名前の ODA のメッセージ・ファイルが日本語ロケール向けにローカライズされると、そのメッセージ・ファイルの名前は次のようになります。
HTMLODAAgent_ja_JP.txt
ODA スクリプト・ファイルまたはバッチ・ファイルのインスタンスを複数作成し、各インスタンスに対応する ODA に固有の名前を指定した場合には、それぞれの ODA インスタンスごとにメッセージ・ファイルを持つことができます。詳しくは、複数の ODA の同時使用 を参照してください。
ビジネス・オブジェクト・ウィザードの「ソースの選択」ダイアログ・ボックスには、ソース・ノード階層のノード間での移動のための以下の仕組みが用意されています。
ステップ 8 に示したソース・ノードの展開方法は、展開可能なノードのすべての 子ノードを表示する方法を説明したものです。表示するオブジェクトを制限するには、ノード名を右クリックすると表示される以下のいずれかのメニュー・アイテムを使用します (図 39 を参照)。
「フィルターを適用」メニュー項目を使用すると、現在選択されているソース・ノードの中で開かれるものを制限できるフィルター を指定できます。このメニュー項目をクリックすると、ビジネス・オブジェクト・ウィザードは、図 44 に示す「ノードへのフィルターの適用」ダイアログ・ボックスを表示します。
フィルター条件のテキストには、任意の数 (0 個を含む) の文字を表すワイルドカードとして、アスタリスク文字 (*) を使用できます。このワイルドカード文字は、必要に応じて、どの位置にも、何箇所でも指定できます。例えば、SAP*、*SAP、*SAP*、または *S*AP* といった指定が可能です。
「OK」をクリックすると、ビジネス・オブジェクト・ウィザードは、親ノードに属する子ノードのうち現在取得済みのものの中から、名前がフィルター条件のテキストに一致するものを検索します。その親ノードを展開すると、名前がこのテキストに一致する子ノードだけが表示されます。
例えば、サンプル Roman ODA の場合、Uulius ノードには、Ares、Cronus、Atlas、Metis の 4 つの子ノードがあります。図 44 に示したフィルター (「A*」) を Uulius ノードに適用した場合、ビジネス・オブジェクト・ウィザードでこのノードを展開すると、図 45 のように表示されます。
ノードのトップでフィルターを指定してからそのノードを展開した場合、そのノードを右クリックして「親のフィルターを適用」をクリックすると、子オブジェクトに同じフィルターを適用することができます。「すべての項目を検索」メニュー項目をクリックした場合には、親ノードのフィルターがすべての要素に適用されます。
「項目を検索」 メニュー項目を使用すると、ビジネス・オブジェクト・ウィザードがデータ・ソースから選択するソース・ノードを絞り込む、検索パターン を指定することができます。「項目を検索」をクリックすると、ビジネス・オブジェクト・ウィザードによって「検索パターンの入力」ダイアログ・ボックスが表示されます。図 46 に、このダイアログ・ボックスを示します。
「検索パターンの入力」ダイアログ・ボックスには、検索パターンによる検索の条件についての説明が表示されます。図 46 のダイアログ・ボックスのテキストは、検索パターンに含めることができるのは 1 文字であることを示しています。ODA が示す検索基準の説明はカスタマイズ可能です。入力する検索パターンは、説明されている検索基準に適合したものにしてください。適合していない場合、ODA は例外をスローします。
「OK」をクリックすると、ビジネス・オブジェクト・ウィザードは、親ノードに属する子ノードのうち名前が検索パターンに一致するものを、データ・ソース内で検索します。その親ノードを展開すると、名前がこのパターンに一致する子ノードだけが表示されます。
ソース・ノード階層内を移動する代わりに、目的のオブジェクトの正確なパスを指定することもできます。このためには、「ソースの選択」ダイアログ・ボックスの右上にある「代わりにこのオブジェクトを使用」 をクリックします。ビジネス・オブジェクト・ウィザードが「オブジェクトのパス」ダイアログ・ボックス (図 47) を表示します。このダイアログ・ボックスではパスを指定します。
オブジェクトのパスとしては、ソース・ノードの完全修飾パス (トップレベルの親ノードから目的のノードまでを含むパス) を指定します。このパス内のノード名は、コロン (:) で区切られています。
オペレーティング・システム・ファイルをソース・ノード階層の現在のノードに関連付けるには、ノードを右クリックし、「関連付けられたファイル」をクリックします (図 48 を参照)。
ファイルをソース・ノードに関連付けると、ODA は、ODA のデータ・ソースを使用しないで、そのファイルをそのソース・ノードのデータのソースとして使用します。
「関連付けられたファイル」メニュー項目をクリックすると、ビジネス・オブジェクト・ウィザードは、図 49 に示す「開く」ウィンドウを表示します。このウィンドウからファイル構造を参照し、現在のノードに関連付けるファイルを選択することができます。
図 49. 関連付けるファイルを選択するための「開く」ウィンドウ
ソース・ノードに関連付けるファイルを選択してから、「開く」をクリックします。ビジネス・オブジェクト・ウィザードが「ソースの選択」ダイアログ・ボックスに制御を戻すと、図 50 に示すように、選択したファイルが、そのファイルを関連付けたソース・ノードの下に表示されます。
ODA に追加情報を指定する必要がある場合、図 51 に示すように、ステップ 5 (「ビジネス・オブジェクトの生成中」) で「BO プロパティー」ダイアログ・ボックスが開きます。
「BO プロパティー」ダイアログ・ボックスで必要な情報をすべて指定したら、「OK」をクリックします。ODA によるビジネス・オブジェクト定義の生成の続きが行われます。
ローカル・ホスト・マシンまたはリモート・ホスト・マシンのいずれかで ODA の複数のインスタンスを実行できます。各インスタンスは固有のポートで実行されます。このポート番号は、ビジネス・オブジェクト・ウィザード内から各 ODA を開始するときに指定できます。
Business Object Designer で複数の Object Discovery Agent を同時に実行するには、以下の手順を実行します。
ビジネス・オブジェクト・ウィザードの最初のダイアログ・ボックス (「エージェントの選択」) が開きます (図 34 を参照)。
ODA スクリプト・ファイルまたはバッチ・ファイルのインスタンスを複数作成し、各インスタンスに対応する ODA に固有の名前を指定した場合には、それぞれの ODA インスタンスごとにメッセージ・ファイルを持つことができます。異なる名前の付いた ODA インスタンスが複数存在しても、メッセージ・ファイルは共通にすることも可能です。有効なメッセージ・ファイルを指定する方法は 2 つあります。