BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > WebLogic Integration > BPM トピック > WebLogic Integration Studio ユーザーズ ガイド > ワークフロー リソースのコンフィグレーション |
WebLogic Integration Studio ユーザーズ ガイド
|
ワークフロー リソースのコンフィグレーション
この章では、システムおよびアプリケーション コンポーネントのコンフィグレーション方法について説明します。
リソース コンフィグレーション タスクの概要
この節で説明するすべてのタスクは、ワークフロー設計の前段階またはその設計中に実行できますが、ここで触れるリソースは、ワークフロー テンプレートにアクセスすることなくコンフィグレーションを行えます。場合によってはワークフロー設計作業は、これらのリソースが既に設定されていることを前提としています。たとえば、ビジネス オペレーションなどは、ワークフローによって呼び出される前に定義しておく必要があります。定義済みのリソースは、システム内のすべてのワークフロー、ユーザ、およびオーガニゼーションにとってグローバルに利用可能になります。これらのタスクの実行については、特に決まった順序はありません。
注意: また、イベント キーのコンフィグレーションもタスクとして予定されている場合は、ワークフロー式言語と Studio Expression Builder および XPath Wizard の各ツールについての学習も必要です。ワークフロー式に関する詳細については、ワークフロー式の使用法を参照してください。
プラグインのコンフィグレーション
プラグインは、EJB として実装されている Java クラスの集合で、一部のワークステーション コンポーネントに備わる機能を拡張するものです。プラグインは、実際の環境に合わせて既存の WebLogic Integration 機能をカスタマイズする手段となり、また、環境固有の機能を追加する手段ともなります。
プラグインは以下のワークフロー コンポーネントの機能を拡張します。
プラグインが以上のワークフロー コンポーネントのいずれかに対して開発される場合は、Studio の対応するダイアログ ボックスも、そのプラグイン機能にアクセスできるように変更されます。たとえば、Studio では開始ノードの [プロパティ] ダイアログ ボックスに、ワークフローの開始をトリガするためのデフォルトの方法がいくつか用意されています。時限方式、手動操作、呼び出し、そしてイベントによるトリガです。デフォルトの方法を拡張するため、開発者は電子メール メッセージの受信など、現実の環境でワークフローを開始するために最適なカスタムのワークフロー トリガ イベントを指定するプラグインを作成できます。このプラグインによる方法は、[開始のプロパティ] ダイアログ ボックスにオプションとして表示されます。
開発されたプラグインが WevLogic Server にデプロイされると、WebLogic Integration での使用が可能になります。WebLogic Integration の起動時に、WebLogic Server 上で利用可能なプラグインの有無を調べるためサーバのチェックが行われます。
利用可能なプラグインは、Studio を使用してロードしアクティブにしない限り使用できません。また、使用する前にプラグインに対して一定のコンフィグレーション設定を指定しなければならない場合もあります。
注意: プラグインのロードまたはコンフィグレーションを行うには、コンポーネントの構成パーミッションが必要です。パーミッション レベルの詳細については、ユーザおよびロールへのパーミッションの割り当てを参照してください。
プラグインを表示する
プラグインを表示するには、[コンフィグレーション|プラグイン] を選択して [プラグインのコンフィグレーション] ダイアログ ボックスを表示します。
図4-1 [プラグインのコンフィグレーション] ダイアログ ボックス
各プラグインについて表示される情報については次の表で説明します。
また、リストからプラグインを選択して [バージョン情報] をクリックしても、そのプラグインの情報を表示できます。 プラグインをロードする プラグインの開始モード(Start mode)が手動(Manual)であれば、WebLogic Integration サーバ セッションの起動時に毎回手動でロードできます。プラグインの開始モードが無効(Disabled)であれば、まず起動モードを手動または自動に変更してロードします。 初期化されたプラグインをロードする手順は、次のとおりです。
使用不可能にしたプラグインをロードする手順は、以下のとおりです。
リスト内のプラグインのステータスが [ロード済み] に変わります。
注意: プラグインの開始モードに加えた変更は、WebLogic Integration サーバを再起動するまで有効になりません。
プラグイン コンフィグレーションを更新する
プラグインのコンフィグレーションを行う手順は、以下のとおりです。
プラグイン コンフィグレーションを削除する
プラグインのコンフィグレーションは、不要になった時点で削除できます。コンフィグレーションを削除してもプラグイン自体は削除されません。登録されているコンフィグレーションのみが削除されます。
注意: プラグインのステータスが [欠如] でない場合は、プラグインのコンフィグレーションは削除できません。
コンフィグレーションを削除する手順は、次のとおりです。
ビジネス オペレーションのコンフィグレーション
ワークフローで、Java クラスや Enterprise JavaBeans (EJB) などのビジネス ロジックを実行するソフトウェア コンポーネントを開くには、ビジネス オペレーションを定義します。ビジネス オペレーションは、パラメータとして渡された変数も含め、EJB または Java クラスのメソッド呼び出しと、その結果としてワークフローに返された値を表しています。ビジネス オペレーション機能を使用して、既存アプリケーションまたは特にそのワークフロー用にビルドされたアプリケーションを呼び出すための、カスタマイズされた関数を作成できます。ビジネス オペレーション機能を使用して、WebLogic Server に登録されている EJB および Java クラスのすべてを、そのメソッドおよびパラメータと共に表示できます。
注意: Java クラスと EJB を、Studio で表示できるようにデプロイする方法については、『WebLogic Integration の起動、停止およびカスタマイズ』の「WebLogic Integration のカスタマイズ」にある「ビジネス オペレーションに対する EJB と Java クラスのデプロイ」を参照してください。
ビジネス オペレーションをいったん定義すれば、システム内のすべてのワークフローでグローバルに利用できるようになります。ビジネス オペレーションを、Java アーカイブ パッケージ ファイルの一部としてエクスポートおよびインポートすることもできます。その際、それらを参照するワークフローの有無は問題にはなりません(詳細については、ワークフロー パッケージのインポートとエクスポートを参照)。
個々のワークフロー内では、ビジネス オペレーションを実行アクションを使用してビジネス オペレーションを呼び出します。また、必要に応じてメソッド呼び出しの結果をワークフロー変数に割り当てます。詳細については、ビジネス オペレーションを呼び出すを参照してください。
ワークフローによって EJB のメソッドまたは Java クラスの非静的メソッドを呼び出すには、まず、ワークフローによってそのコンストラクタを呼び出して、サーバ上に EJB または Java クラスのインスタンスを作成する必要があります。したがって、create() EJB のメソッドおよび Java クラスのコンストラクタ メソッドに対してビジネス オペレーションを作成し、また、インスタンスへの参照を格納する変数を必ず作成してください。各 Java コンポーネント タイプに対するビジネス オペレーションの定義と追加の方法など、詳細については、以下の節で説明します。また、ビジネス オペレーションを呼び出すでは、必要なメソッドを呼び出す手順および変数を割り当てる手順について説明します。また、『WebLogic Integration BPM ユーザーズ ガイド』の「ビジネス オペレーションの作成と実行 : Check Inventory タスクの定義」には、ビジネス オペレーションを定義するコード例が記載されています。.
注意: ビジネス オペレーションを追加、定義、または削除するには、コンポーネントの構成パーミッションが必要です。パーミッション レベルの詳細については、ユーザおよびロールへのパーミッションの割り当てを参照してください。
ビジネス オペレーションを表示する
ビジネス オペレーションを表示するには、[コンフィグレーション|ビジネス オペレーション] を選択して [ビジネス オペレーション] ダイアログ ボックスを表示します。
図4-2 [ビジネス オペレーション] ダイアログ ボックス
各ビジネス オペレーションに関して表示される情報については、次の表で説明します。
ビジネス オペレーションの追加 ビジネス オペレーションを作成、定義する手順は、以下のとおりです。
図4-3 [ビジネス オペレーションを定義] ダイアログ ボックス
Java クラスを呼び出すビジネス オペレーションを追加する
Java クラスの非静的メソッドを呼び出すビジネス オペレーションを作成する場合は、そのクラスのコンストラクタ メソッドを呼び出すビジネス オペレーションも作成する必要があります(詳細については、EJB または Java クラス インスタンスを作成するためのビジネス オペレーションを呼び出すを参照)。このビジネス オペレーションは、そのクラスの非静的メソッドを呼び出す前にワークフローから呼び出す必要があるため、必ずその機能を識別できる有意な名前を付けてください。Java クラス インスタンスが実行時に作成される際に、そのインスタンスへの参照を格納する Java Object 型の変数も作成する必要があります。変数については、変数に関する作業を参照してください。
最後に述べておきますが、ビジネス オペレーションに名前を付ける際、ビジネス オペレーションが静的メソッド、非静的メソッドのいずれを呼び出すのかを明示する名前にします。それにより、ワークフロー デザイナは、最初にコンストラクタ メソッドを呼び出す必要があるのかどうか判断します。
Java クラスを呼び出すビジネス オペレーションを定義する手順は、以下のとおりです。
図4-4 [Java クラス名] ダイアログ ボックス
図4-5 [ビジネス オペレーションを定義] ダイアログ ボックス : [Java クラス] オプション
図4-6 [パラメータ] ダイアログ ボックス
セッション EJB を呼び出すビジネス オペレーションを追加する
ワークフローに対してビジネス ロジックを提供するメソッドを呼び出すビジネス オペレーションの作成に加えて、セッション EJB (メソッドはビジネス オペレーションで呼び出す) の create() メソッドを呼び出すビジネス オペレーションも作成する必要があります(詳細については、EJB または Java クラス インスタンスを作成するためのビジネス オペレーションを呼び出すを参照)。このビジネス オペレーションは、他のメソッドを呼び出す各トランザクションのワークフローから呼び出す必要があるため、必ずその機能を識別できる有意な名前を付けてください。EJB インスタンスが実行時に作成される際に、そのインスタンスへの参照を格納するセッション EJB 型の変数も作成する必要があります。変数については、変数に関する作業を参照してください。
WebLogic Server にデプロイされるすべてのセッション EJB は、[ビジネス オペレーションを定義] ダイアログ ボックスにあるリストに、それぞれの JNDI (Java Naming and Directory Interface) 名に基づいた名前が表示されます。
図4-7 [ビジネス オペレーションを定義] ダイアログ ボックス : [セッション EJB] オプション
セッション EJB を呼び出すビジネス オペレーションを定義する手順は、以下のとおりです。
エンティティ EJB を呼び出すビジネス オペレーションを追加する
ワークフローに対してビジネス ロジックを提供するメソッドを呼び出すビジネス オペレーションの作成に加えて、エンティティ EJB (メソッドはビジネス オペレーションで呼び出す) の create() メソッドを呼び出すビジネス オペレーションも作成する必要があります(詳細については、EJB または Java クラス インスタンスを作成するためのビジネス オペレーションを呼び出すを参照)。このビジネス オペレーションは、その EJB の他のメソッドを呼び出す前にワークフローから呼び出す必要があるため、必ずその機能を識別できる有意な名前を付けてください。EJB インスタンスが実行時に作成される際に、そのインスタンスへの参照を格納するエンティティ EJB 型の変数も作成する必要があります。変数については、変数に関する作業を参照してください。
WebLogic Server にデプロイされるすべてのエンティティ EJB は、[ビジネス オペレーションを定義] ダイアログ ボックスにあるリストに、それぞれの JNDI 名に基づいた名前が表示されます。
図4-8 [ビジネス オペレーションを定義] ダイアログ ボックス : [エンティティ EJB] オプション
エンティティ EJB を呼び出すビジネス オペレーションを定義する手順は、以下のとおりです。
ビジネス オペレーションの更新
ビジネス オペレーションを更新する場合は、必ずワークフローからビジネス オペレーションを参照するビジネス オペレーションを実行アクションをすべて更新してください。このアクションの詳細については、ビジネス オペレーションを呼び出すを参照してください。
ビジネス オペレーションを更新する手順は、以下のとおりです。
ビジネス オペレーションの削除
注意: ビジネス オペレーションを削除する前に、そのビジネス オペレーションがビジネス オペレーションを実行アクションを使用したワークフローによって参照されていないことを確認してください。参照しているとワークフローをアクティブにできません。削除を実行する際、参照がある場合も警告は表示されないため、削除操作に対応したビジネス オペレーションを実行アクションの更新を確実に実行してください(ビジネス オペレーションを呼び出すを参照)。
ビジネス オペレーションを削除する手順は、以下のとおりです。
イベント キーのコンフィグレーション
ワークフローの開始やワークフロー内のノードのトリガは、イベントによって行うことができます。イベントは別のワークフローや別のアプリケーションなどの外部ソースからの非同期の通知です。開始ノードはイベント トリガ型として定義され、イベント ノードは常に外部イベントのみによってトリガできる非同期ノードです。
イベント通知は、一般的には JMS (Java Message Service) メッセージに含まれ、JMS キューで受信される XML ドキュメントの形をとります。ただし、プラグインで定義することもでき、その場合イベント通知は XML ドキュメントではなく、カスタムのトリガとなります(詳細については、『WebLogic Integration BPM プラグイン プログラミング ガイド』を参照)。
XML イベントの型では、実際のトリガは XML メッセージのプロローグで定義された文書型( DOCTYPE)の宣言であるか、または XML メッセージのルート要素であるかのいずれかです。開始またはイベント ノードのプロパティ ダイアログ ボックスで、イベントのトリガまたはワークフローの開始に使用する DOCTYPE またはルート要素を指定します。イベントは、ノードのプロパティ ダイアログ ボックスで指定された DOCTYPE、またはルート要素が着信 XML メッセージのそれと一致しない限りトリガされません。
DOCTYPE またはルート要素の使用に加え、イベント キーを使用してイベントをさらに修飾できます。イベント キーを使用して、開始ノードやイベント ノードを開始する着信 XML メッセージ、JMS ヘッダ、プロパティ フィールドなどの内容を指定できます。すなわち、当該ノードをトリガする特定の DOCTYPE またはルート要素を含むすべての着信 XML ドキュメントを受け入れるのではなく、ドキュメントやヘッダに含まれる一定の値を持つメッセージのみが実行中のワークフロー内のノードをトリガできるように、そのような値に基づいて着信 XML メッセージのインスタンスをフィルタ処理できます。
イベント キーは以下の 2 つの部分で構成されます。
キー値の式は開始ノードまたはイベント ノードの [プロパティ] ダイアログ ボックスで指定します。キー値の式は実行時に評価されるワークフロー式で、そのノードのトリガが可能となるように着信メッセージに含まれている正確なデータを指定します。開始ノードでは、この式は一般的には、着信 XML ドキュメントに含まれる特定の再帰データを参照する定数を含んでいます。それが JMS ヘッダの値である場合もあります。イベント ノードの場合、キー式には通常、実行時に一意の値を受け取る変数または関数が含まれています。キー値の式のサンプルはイベント キーを理解するにあります。また、キー値の式を定義する方法は、イベントトリガ型開始のプロパティを定義するおよびイベント プロパティを定義するで説明します。
これは、実行時に着信メッセージのヘッダまたは本文からキー値を返し、それを、開始ノードまたはイベント ノードの対応するキー値の式が必要とするデータ型にコンバートする式です。イベント キー式は、[コンフィグレーション] メニューからアクセスするイベント キー式のダイアログ ボックスで指定します。この式には一般的には、XML ドキュメントを解析するための XPath 言語の式、または JMS メッセージのヘッダから値を抽出するための EventAttribute() 関数の式が含まれています。
イベント キーのコンフィグレーションで、開始ノードまたはイベント ノードのプロパティ ダイアログボックスで指定した DOCTYPE またはルート要素に対応するイベント記述子を指定します。次にイベント キー式を指定します。これは、開始ノードまたはイベント ノードのプロパティ ダイアログ ボックスで定義されたキー値の式に対応する式で、プロセス エンジンによって実行時にこの 2 つの値を比較して一致するかどうかの判断が可能になります。イベント記述子と DOCTYPE またはルート要素の関係、およびイベント キー式とキー値の式の関係は、イベント キーを理解するで、コード例を使用してさらに詳しく説明します。
ただし、イベント キーのコンフィグレーションは、ワークフローとは独立して行うことができるため、その手順は以下で説明します。コンフィグレーションが完了したイベント キーは、すべてのオーガニゼーションのワークフローで使用可能となります。着信メッセージの内容がわかっている場合は、開始ノードかまたはイベント ノードで対応するキー値の式を設定するワークフロー デザイナが利用できるように、あらかじめイベント キー式のコンフィグレーションを済ましておくことが可能です。イベント キーを、Java アーカイブ パッケージ ファイルとの間でエクスポートおよびインポートすることもできます。その際、それらを参照するワークフローの有無は問題にはなりません(詳細は、ワークフロー パッケージのインポートとエクスポートを参照)。
イベント キーのコンフィグレーションを表示する
イベント キーのコンフィグレーションを表示するには [コンフィグレーション|イベント] を選択して、[イベント キー] ダイアログ ボックスを表示します。
図4-9 [イベント キー] ダイアログ ボックス
各イベント キーに対して表示される情報について、次の表で説明します。
イベント キーのコンフィグレーションを追加する イベント キーのコンフィグレーションを追加する手順は、以下のとおりです。
図4-10 [イベント キーを定義] ダイアログ ボックス
イベント キー式の構文についての詳細は、実行時のイベント データを抽出するを参照してください。また、対応する開始ノードまたはイベント ノードで定義されているキー値の式によって返される型と一致するデータ型を返すには、XPath() 関数または EventAttribute() 関数が型キャスト関数にラップされている必要があるため注意してください。型キャスト関数については、データ型を変換するを参照してください。
ここに入力したイベント キーの式が、開始ノードまたはイベント ノードのキー値の式によって指定された値に一致する値を返す必要があることにも注意してください。開始ノードまたはイベント ノードのキー値の式を定義する方法の詳細については、イベントおよびイベントトリガ型開始のプロパティを定義するを参照してください。
イベント キーのコンフィグレーションを更新する
イベント キーのコンフィグレーションを更新する場合、式のみの更新が可能で、イベント記述子は更新できません。
イベント キーを更新する手順は、以下のとおりです。
イベント キーのコンフィグレーションを削除する
イベント キーを削除する場合は、キー値がワークフローの開始ノードまたはイベント ノードのキー値の式によって参照されないように注意してください。参照される場合は、これらのイベントはトリガされません。
イベント キーを削除する手順は、以下のとおりです。
リポジトリにあるエンティティの管理
WebLogic Integration のリポジトリには、XML ドキュメント、DTD (Document Type Definition: 文書型定義) ファイル、XSL ドキュメントなどの XML エンティティを保存するために使用されるデータベース表が格納されています。Studio を使用して、リポジトリの表示、整理、リポジトリへのファイルの格納を行い、また、既存 XML エンティティをシステム内のすべてのワークフローによってグローバルに利用、再利用できるように設定できます。作成したワークフロー内で、以前格納した XML ドキュメントを参照する場合、システムにログオンしたあらゆるクライアントでこれらのドキュメントを使用できるように、リポジトリを設定できます。
たとえば、XML をクライアントに送信アクションを使用して Worklist ユーザ(Worklist アプリケーションに対する XML メッセージを送信するを参照)と対話する場合、各ユーザが DTD ファイルに一元管理下にある場所で容易にアクセスできるように、DTD ファイルをリポジトリに格納できます。また、XSL 変換アクションを使用して XML ドキュメントを実行時に変換する場合は(XML ドキュメントの変換を参照)、XML スタイルシート の変換ドキュメントをリポジトリに格納して、そのアクションを定義する際に容易にアクセスできるようにすると便利です。
この節では、リポジトリの初期設定について説明します。ただし、リポジトリおよびこの節で説明するすべての機能は、XML エンティティを操作で述べたとおり、ワークフロー ダイアログボックスからもアクセスできます。また、リポジトリに格納されているエンティティを、ディスクのファイルをエクスポート(このオプションについては、エンティティをファイル システムにエクスポートするで説明)および Java アーカイブ パッケージ ファイルをエクスポートして、別のシステムに再インポートすることもできます(インポートおよびエクスポートの詳細については、ワークフロー パッケージのインポートとエクスポートを参照)。
リポジトリにある XML エンティティを表示する
リポジトリにある XML エンティティを表示する手順は、以下のとおりです。
図4-11 リポジトリ内の XML エンティティ
[リポジトリ] ウィンドウに表示されている情報については次の表で説明します。
図4-12 選択したフォルダ内の XML エンティティ
図4-13 [ドキュメントのプレビュー] ウィンドウ
エンティティの詳細については、XML エンティティを操作するを参照してください。
左側のパネルには、フォルダやサブフォルダが階層状に配列されたリポジトリのツリー ビューが表示されます。右最上のパネルには、選択したフォルダの内容が表示されます。[説明] フィールドには、選択したフォルダの説明が表示されます。[メモ] フィールドには、選択したフォルダに関する注意が表示されます。
フォルダを操作する
1 つのフォルダに対して、追加、更新、削除など、いくつかのアクションを実行できます。フォルダに対してこれらのアクションを実行する方法について以下で説明します。
フォルダを追加する
フォルダを追加する手順は、以下のとおりです。
図4-14 [フォルダを追加] ダイアログ ボックス
フォルダ情報を更新する
フォルダを更新する手順は、以下のとおりです。
図4-15 [フォルダ情報を更新] ダイアログ ボックス
フォルダを削除する
フォルダはサブフォルダが存在する間は削除できません。
フォルダを削除する手順は、以下のとおりです。
XML エンティティを操作する
リポジトリにはさまざまなタイプの XML エンティティが保存されており、各エンティティは次の表に示すとおり、記号で表されています。
リポジトリに格納されているフォルダ内の XML エンティティに対しては、エンティティの追加、更新、移動、削除など、いくつかのアクションを実行できます。 リポジトリに XML エンティティをインポートする XML エンティティを追加する手順は、以下のとおりです。
図4-16 [エンティティを追加] ダイアログ ボックス
図4-17 [開く] ダイアログ ボックス
エンティティを更新する
エンティティを更新機能を使用して、定義済みのエンティティのコンテンツを変更することができます。ただし、エンティティの型の変更はできません。エンティティの型を変更するには、コンテンツ型を持つ新しいエンティティを作成する必要があります。詳細については、リポジトリに XML エンティティをインポートするを参照してください。
エンティティを更新する手順は、以下のとおりです。
図4-18 [エンティティ定義を更新] ダイアログ ボックス
エンティティを移動する
エンティティは、ソース フォルダから切り取って移動先フォルダに貼り付ける方法で、フォルダからフォルダへと移動できます。
エンティティを移動する手順は、以下のとおりです。
エンティティをファイル システムにエクスポートする
リポジトリのデータベース表から取得した XML エンティティは、ローカルファイル システム上のローカル ファイル システムまたはローカル マシンにマッピングされたネットワーク ドライブに保存できます。
エンティティのファイルをエクスポートする手順は、以下のとおりです。
図4-19 [保存] ダイアログ ボックス
エンティティを削除する
ワークフロー内の XSL 変換アクションによって参照されるエンティティを削除する場合は、実行時に WebLogic Integration サーバ例外が発生しないように必ずこのアクションを更新してください(このアクションの詳細については、XML ドキュメントの変換を参照)。
エンティティを削除する手順は、以下のとおりです。
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |