チュートリアル : 初めてのビジネス プロセス設計

     前  次    新しいウィンドウで目次を開く     
ここから内容

手順 2 : プロセスの開始方法の指定

この手順では、ビジネス プロセスの開始方法を定義します。Web サービスとして、ビジネス プロセスはクライアントが要求を行うために呼び出すメソッドをとおして機能をエクスポーズします。また、ビジネス プロセスからプロセス コントロールを作成することもできます。プロセス コントロールの場合は、コントロール インタフェースを介して、他のリソースがプロセスと対話できます。

注意 : プロセス コントロールの詳細については、「手順 6 : ビジネス プロセスの呼び出し」を参照してください。

この手順では、見積り要求 (RFQ) メッセージをクライアントから受信するために、ビジネス プロセスに開始ノードを設計します。RFQ メッセージを受信すると、ビジネス プロセスが開始されます。また、受信した RFQ メッセージを保持する変数も作成します。

[デザイン] ビューでは、ビジネス プロセスとクライアント間の対話がクライアント要求ノードおよびクライアント応答ノードによって表されます。このチュートリアルでは、クライアント要求ノードをビジネス プロセスに追加し、その後に、クライアントからのメッセージの受信を処理するコードをこのノードで作成します。

ビジネス プロセスを開始するクライアント要求ノードを設計するには、次のタスクを実行します。

 


開始ノードの作成

  1. [パッケージ・エクスプローラー] ビューで、RequestQuote.java をダブルクリックします。RequestQuote ビジネス プロセスが [デザイン] ビューに表示されます。
  2. 図 3-1 RequestQuote プロセス


    RequestQuote プロセス

  3. 開始ノードをダブルクリックし、ノード ビルダを開きます。ノード ビルダには指定可能な開始方法が表示されます。
  4. 図 3-2 ノード ビルダ - 開始ノード


    ノード ビルダ - 開始ノード

  5. [クライアント要求で呼び出す] を選択し、[閉じる] をクリックします。
  6. 開始ノードに関連付けられていた空のノードが [Client Request] ノードになります。

 


クライアント要求ノードの設計

クライアント要求ノードの設計では、クライアントがビジネス プロセスの開始をトリガするために使用するメソッドとパラメータを作成し、クライアントからの要求の受信を処理するロジックを設計します。

  1. [Client Request] ノードの名前を変更します。
  2. [Client Request] ノードを選択し、〔F2〕を押します。新しい名前として Client Requests Quote と入力し、〔Enter〕を押します。これで、ビジネス プロセスが次の図のようになります。

    図 3-3 クライアント要求ノードの名前変更


    クライアント要求ノードの名前変更

  3. [Client Requests Quote] ノードをダブルクリックします。
  4. ノード ビルダが表示されます。

    図 3-4 ノード ビルダ


    ノード ビルダ

    注意 : ノード ビルダは、ビジネス プロセスとそのクライアントおよび他のリソースとの間の通信を設計する際に役立つ、タスク駆動型ユーザ インタフェースを提供します。ノード ビルダにアクセスするには、[デザイン] ビューで目的のノードをダブルクリックします。これにより、選択したノードのタイプに固有のノード ビルダが、ビジネス プロセスにインラインで表示されます。

    クライアント要求ノードのノード ビルダには、[一般的な設定] タブと [データの受信] タブが表示されます。

一般的な設定の指定

次の手順では、ビジネス プロセスによってエクスポーズされるメソッドを指定する方法を説明します。クライアントはこのメソッドを呼び出してビジネス プロセスを開始し、ビジネス プロセスに対する要求を行います。

  1. [一般的な設定] タブの [メソッド名] フィールドで、デフォルトのメソッド名 clientRequestquoteRequest に変更します。
  2. 注意 : ビジネス プロセスをサービスとして提供する場合は、クライアント要求ノードでメソッドに割り当てた名前が、WSDL (Web Services Description Language) を介してエクスポーズされるメソッドの名前となります。ビジネス プロセスが提供するサービスを明確に示す名前を使用することをお勧めします。
  3. quoteRequest メソッドのパラメータのデータ型を指定します。
    1. [一般的な設定] タブの [追加] をクリックします。データ型を示すパネルが表示されます。
    2. 図 3-5 パラメータのデータ型の指定


      パラメータのデータ型の指定

      RFQ は XML メッセージです。したがって、このノードでは XML データ型が必要です。

    3. [XML] タブを選択します。
    4. パネルには、プロジェクトで利用可能な XML スキーマ ファイルのリストが [型付き] 下に、型なし XML オブジェクトのリストが [型なし] 下に表示されます。

      このチュートリアルで必要な XML スキーマは、ユーティリティ プロジェクトの Schemas フォルダ内にあります。用意されているスキーマには、QuoteRequest.xsdPriceQuote.xsdAvailQuote.xsdQuote.xsd と、システム スキーマ DynamicProperties.xsd があります。

      注意 : アプリケーション内のサービスで利用する XML スキーマは、Web プロジェクトまたはユーティリティ プロジェクト下の Schemas フォルダ内に配置する必要があります。

      この手順では、XML スキーマ QuoteRequest.xsd を使用して、クライアントが送信してビジネス プロセスをトリガするドキュメントの構造を指定します。

    5. [XML] タブで [型付き] ノード下のノードを [QuoteRequest.xsd] ノードまで展開します。
    6. XML スキーマ QuoteRequest.xsd のグラフィック表現が表示されます。

    7. [quoteRequest] ノードを選択します。これは、XML ドキュメント内の親要素を表します。
    8. [型名] フィールドに org.example.request.QuoteRequestDocument が表示されます。

      図 3-6 見積り要求パラメータの型


      見積り要求パラメータの型

    9. [パラメータ] フィールドで、デフォルトのパラメータ名 (x0) の代わりに requestXML と入力します。
    10. [OK] をクリックします。
    11. パラメータの型 (QuoteRequestDocument) と名前 (requestXML) が、ノード ビルダの [一般的な設定] タブに表示されます。

      この手順で、ビジネス プロセスによってクライアントにエクスポーズされるメソッドの指定が完了します。クライアントからのメッセージは、型付き XML であると予期されます。つまり、クライアントから受信するメッセージには、XML スキーマ (ここでは QuoteRequest.xsd) に対して有効な XML データが含まれていなければなりません)。

      注意 : testxml フォルダに用意されているサンプル XML ファイル (QuoteRequest.xml および QuoteRequest_a.xml) は、このチュートリアルの後の部分でプロセスをテストするときに使用します。

      [一般的な設定] タブが更新されて、次の図のように、メソッド名とパラメータが正しく指定されたことが示されます。

      図 3-7 [一般的な設定] タブ - 更新済み


      [一般的な設定] タブ - 更新済み

      注意 : [一般的な設定] タブ - 更新済み は完了タスクを示し、[一般的な設定] タブ - 更新済み は未完了タスクを示します。

データの受信の指定

  1. [データの受信] タブを選択します。このタブでは、クライアントから RFQ メッセージを受け取る変数を指定できます。
  2. [データの受信] タブには、モードが 2 つあります。

    • [変数の割り当て] : このモードは、クライアントから受信したデータを同じデータ型の変数に割り当てる場合に使用します。
    • [トランスフォーメーション] : このモードは、変数に割り当てられたデータとメソッド パラメータが予期するデータ間のトランスフォーメーションを作成する場合に使用します。
    • デフォルトでは、[変数の割り当て] パネルで [データの受信] タブが開きます。

      注意 : [データの受信] タブでは、型付き非 XML (MFL) データを XML 変数に直接割り当てることもできます。この場合、トランスフォーメーションは不要です。非 XML (MFL) データについては、このチュートリアルでは説明しません。MFL ファイル、およびビジネス プロセスの変数へのデータの割り当てについては、『ビジネス プロセス構築ガイド』の「ビジネス プロセスの変数およびデータ型」を参照してください。

      このチュートリアルでは、クライアントから受信した XML メッセージを同じデータ型の変数に直接割り当てるため、[変数の割り当て] モードを使用します。後の手順では、クライアントから受け取った RFQ を割り当てる、型付き XML の変数 (QuoteRequestDocument) を作成します。

  3. [割り当てる変数を選択します] ドロップダウン リストから [変数の新規作成...] を選択します。
  4. [変数を作成] ダイアログ ボックスが表示されます。

  5. [変数名] フィールドに requestXML と入力します。
  6. [XML] タブで、[型付き] ノード下のツリー構造を [QuoteRequest.xsd] ノードまで展開してから、次の図に示すように [quoteRequest] 要素を選択します。
  7. 図 3-8 [変数を作成] ダイアログ ボックス


    [変数を作成] ダイアログ ボックス

    [型名] フィールドに org.example.request.QuoteRequestDocument が表示されます。

  8. [OK] をクリックします。
  9. 新しい変数が作成され、[データの受信] タブに表示されます。

    図 3-9 変数の割り当て


    変数の割り当て

    注意 : requestXML 変数は、[データ パレット] ビューに XML 変数として表示されます。

    ノード ビルダの両方のタブ ([一般的な設定] と [データの受信]) が、完了 変数の割り当て とマークされます。

  10. [閉じる] をクリックします。
  11. [デザイン] ビューでは、[Client Requests Quote] ノードの完了状態を示すアイコンが、変数の割り当て から 変数の割り当て に変わり、ノードの設計が完了したことを示します。

    図 3-10 完了を示すアイコン


    完了を示すアイコン

  12. WorkSpace Studio のメニューから、[ファイルArrow symbolすべて保管] を選択します。

関連トピック


  ページの先頭       前  次