チュートリアル : Worklist アプリケーションの構築
手順 3. ビジネス プロセスの開始方法の設計
この手順では、解決承認ビジネス プロセスの設計を開始します。具体的には、実行時にビジネス プロセスがどのように開始されるかを設計します。
この手順では、バグ解決メッセージをクライアントから受信するためにビジネス プロセスで開始ノードを設計します。このメッセージを受信すると、ビジネス プロセスが開始されます。受信したメッセージを保持する変数も作成します。
デザイン ビューでは、ビジネス プロセスとクライアント アプリケーション間の対話がクライアント要求ノードおよびクライアント応答ノードによって表されます。このチュートリアルでは、クライアント要求ノードをビジネス プロセスに追加し、その後にクライアントからのメッセージの受信を処理するコードをこのノードで作成します。
ビジネス プロセスを開始するクライアント要求ノードを設計するには、次のタスクを実行します。
ビジネス プロセスでの開始ノードの作成
「手順 2. アプリケーションの作成」では、Worklist Tutorial アプリケーションにビジネス プロセスを作成しました。この手順では、バグ追跡ビジネス ロジックを伴うこのビジネス プロセスの設計を開始します。
WebLogic Workshop で Worklist_Tutorial を開き、[アプリケーション] パネルの ResolutionApproval.jpd をダブルクリックします。ビジネス プロセスがデザイン ビューに表示されます。
ビジネス プロセスの名前を、その機能をより適切に表す名前に変更します。
名前 (process) が強調表示されていない場合
、process をクリックして強調表示します。
〔F2〕を押し、ノードの名前として ResolutionApproval を入力し、〔Enter〕を押します。
デザイン ビューのビジネス プロセスには、[アプリケーション] タブで JPD ファイルに指定した名前と一致するように ResolutionApproval という名前を付ます。
クライアントとビジネス プロセス間の通信の設計
この手順では、クライアントとビジネス プロセス間の通信の設定をします。そのためには、次の節で説明する手順に従ってください。
クライアント要求ノードを設計するには
クライアント要求ノードの設計では、クライアントがビジネス プロセスの開始をトリガするために使用するメソッドとパラメータを作成し、クライアントからの要求の受信を処理するロジックを設計します。
デザイン ビューで、空の [Starting Event] ターゲットをダブルクリックして開始ノード ビルダを表示します。ノード ビルダが次のように表示されます。
注意 : ノード ビルダは、ビジネス プロセスとそのクライアントおよび他のリソースとの間の通信の設計を支援するタスク駆動型ユーザ インタフェースを提供します。
ノード ビルダを閉じるには、右上の [X] をクリックします。開始ノードに関連付けられていた空のノードに、クライアント要求ノードが設定されます。
クライアント要求ノードをクリックし、〔F2〕を押します。
ノードに対し、Client Request に代わる名前として Receive Resolution と入力します。
〔Enter〕を押します。これで、ビジネス プロセスが次の図のようになります。
次の図に示すように、Receive Resolution ノードをダブルクリックしてノード ビルダを起動します。
一般的な設定を指定するには
次の手順では、ビジネス プロセスによってクライアントにエクスポーズされるメソッドを指定する方法を説明します。クライアントはこのメソッドを起動してビジネス プロセスを開始し、ビジネス プロセスに対する要求を行います。
[一般的な設定] タブの [メソッド名] フィールドで、デフォルトのメソッド名 clientRequest を receiveResolution に変更します。
注意 : ビジネス プロセスをサービスとして提供する場合は、クライアント要求ノードでメソッドに割り当てた名前が、WSDL (Web Services Description Language) を介してエクスポーズされるメソッドの名前となります。一般には、ビジネス プロセスが提供するサービスを表す名前を定義することをお勧めします。
receiveResolution メソッドに対するパラメータのデータ型を指定します。
[一般的な設定] タブで、[追加] をクリックします。使用可能なデータ型を示すパネルが表示されます。
クライアントからのバグ解決メッセージは、XML メッセージです。したがって、このノードでは XML タイプが関係します。
必要に応じて、[XML] を選択します。パネルには、プロジェクトで利用可能な XML スキーマ ファイルのリスト (タイプ済み XML) および未タイプ XML オブジェクトのリストが表示されます。
注意 : 解決受信ビジネス プロセスを構築する際に必要となる XML スキーマは、「チュートリアル スキーマの作成」で追加しています。
この手順では、BugResolution.xsd を使用してクライアントがビジネス プロセスを開始するために送信するドキュメントの構造を指定します。
[XML タイプ] のリストで、BugResolution.xsd に関連付けられた [+] をクリックします。
データ型のパネルに、BugResolution.xsd で定義されている XML スキーマのグラフィカルな表現が表示されます。
bug-resolution ノード (XML ドキュメントでの親要素) をクリックします。[型] フィールドに XML タイプ com.bea.wliWorklistTutorial.bugResolution.BugResolutionDocument が表示されます。
[名前] フィールドで、デフォルトのパラメータ名 (x0) を resolutionXML に置き換えます。
[OK] をクリックします。指定したパラメータ設定 (パラメータ型は BugResolutionDocument、パラメータ名は resolutionXML) が、ノード ビルダの [一般的な設定] タブに表示されます。
これで、ビジネス プロセスがクライアントにエクスポーズするメソッドの指定が完了しました。クライアントからのメッセージは、タイプ済み XML であると予期されます。つまり、クライアントから受信するメッセージには、XML スキーマ (ここでは BugResolution.xsd) に対して有効な XML が含まれていなければなりません。
データの受信を指定するには
[データの受信] タブをクリックします。このタブでは、クライアントから受信したバグ解決メッセージが実行時に割り当てられる変数を指定できます。デフォルトでは、[データの受信] タブを開くと [変数の割り当て] パネルが表示されます。
[データの受信] タブには 2 つのモードがあります。
[変数の割り当て] — このモードは、クライアントから受信したデータを同じデータ型の変数に割り当てる場合に使用します。
[トランスフォーメーション] — このモードは、変数に割り当てられたデータとメソッド パラメータが予期するデータ間のトランスフォーメーションを作成する場合に使用します。
このチュートリアルでは、クライアントから受信した XML メッセージを同じデータ型の変数に直接割り当てるので、[変数の割り当て] モードを使用します。具体的には、ビジネス プロセスがクライアントから受信したバグ解決を割り当てるタイプ済み XML の変数 (BugResolutionDocument) を作成します。
[割り当てる変数を選択します] で、ドロップダウン リストの矢印をクリックし、[変数の新規作成...] を選択します。
[変数を作成] ダイアログ ボックスで、次の手順を実行します。
[変数名] フィールドに resolutionXML と入力します。
[変数の型の選択] フィールドで、[変数の型] フィールドに次のように表示されていることを確認します。
com.bea.wliWorklistTutorial.bugResolution.BugResolutionDocument
[変数の型] に間違いがある場合は、[XML タイプ] のリストで BugResolution.xsd の.bug-resolution 要素を選択します。
[OK] をクリックします。新しい変数が作成され、[データの受信] タブに表示されます。resolutionXML 変数は、データ パレットにも XML 変数としてリストされます。
ノード ビルダの両方のタブ ([一般的な設定] と [データの受信]) が、完了
とマークされます。
Receive Resolution ノード ビルダを閉じるには、右上の [X] をクリックします。
この手順で、ビジネス プロセスの開始ノードの設計が完了します。
実行時にビジネス プロセスがどのように開始されるかの設計が完了しました。Worklist コントロールを使用してビジネス プロセスとユーザの統合を開始するには、「手順 4. タスクの作成とユーザへの割り当て」に進みます。