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

     前  次    目次     
ここから内容

手順 10 : ファイル システムへの見積りの書き込み

この手順では、前の手順で作成した見積りをビジネス プロセスがファイル システムに書き込むノードを作成します。ファイル コントロールを使用すると、ファイル システム内でファイルの読み込みや書き込み、または追加を簡単に行えます。

以下のタスクを実行することによって、価格と在庫を組み合わせた見積りをファイル システムに書き込むビジネス プロセスを設計します。

以下のタスクは省略可能です。これらのタスクはファイル コントロールへの理解を深めるために用意されていますが、チュートリアルを完了するために不可欠なタスクではありません。

ファイル コントロールのインスタンスをプロジェクトに作成するには

このシナリオでは、ファイル コントロールの 1 つのインスタンスをビジネス プロセスに追加します。

  1. [データ パレット] タブの をクリックして、ビジネス プロセスが対話できるリソースを表すコントロールのリストを表示します。
  2. [Integration コントロールArrow symbolファイル] を選択します。[コントロールの挿入] ダイアログ ボックスが表示されます。
  3. [コントロールの挿入] ダイアログ ボックスで以下を行います。
    1. このコントロールの変数名として myFileQuote と入力し、[次へ] をクリックします。
    2. [コントロールの作成] ダイアログ ボックスで、[使用する新しい File コントロールを作成] を選択し、[名前] フィールドに MyFileQuote と入力して、[次へ] をクリックします。
    3. [コントロールの挿入 - ファイル] ダイアログ ボックスで、以下のフィールドに値を入力します。
    4. ディレクトリ名 - ファイル コントロールがファイルを書き込む場所を入力します。ファイル システム内の任意の場所を指定できます。

      ファイル名フィルタ - ファイルの名前を入力します。たとえば、quote.xml と入力します。

      データのタイプ - ドロップダウン リストから XmlObject を選択します。

    5. [終了] をクリックして [コントロールの挿入] ダイアログ ボックスを閉じます。
    6. ファイル コントロールのインスタンス myFileQuote がプロジェクトに作成され、コントロール フォルダの下に表示されます。

  4. Workshop メニューから [ファイルArrow symbol保管] を選択します。
注意 : この単純なケースでは、ファイル コントロールの各インスタンスで個別のファイルを操作できます。ファイル コントロールで複数のファイルを操作する方法については、「ファイル コントロール」を参照してください。
ビジネス プロセスにコントロール送信ノードを設計してファイル コントロールと対話するには
  1. データ パレット内の myFileQuote コントロールを展開し、以下のメソッドをクリックします。
  2. FileControlPropertiesDocument write(XmlObject someData)
  3. データ パレットからこのメソッドをドラッグし、RequestQuote ビジネス プロセスの [Combine Price and Avail Quotes] ノードの直後、終了ノードの直前にドロップします。このノードには、デフォルトで write という名前が付きます。
  4. ノードの名前を write から Write Quote to File に変更します。
  5. [Write Quote to File] ノードをダブルクリックします。ノード ビルダが開き、[一般的な設定] タブが表示されます。
  6. [コントロール] フィールドに [myFileQuote] が表示され、[メソッド] フィールドで以下のメソッドが選択されていることを確認します。
  7. FileControlPropertiesDocument write(XmlObject someData)
  8. [データの送信] タブをクリックして、ノード ビルダに 2 番目のタブを開きます。[コントロールが予期する値] フィールドには、write() メソッドが予期するデータ型 XmlObject someData が設定されています。
  9. [割り当てる変数を選択します] フィールドで、矢印をクリックしてプロジェクト内の変数のリストを表示し、[Quote (QuoteDocument)] を選択します。Quote 変数は、「手順 9 : 見積りドキュメントの作成」の見積りを保持するために作成したものです。
  10. 注意 : このノードのノード ビルダには、[データの受信] タブがあります。このタブを使用して、ファイル コントロールが返したデータが割り当てられる変数を指定できます。このチュートリアルでは、この変数を指定する必要はありません。[データの受信] タブは無視することができます。[データの受信] タブで変数を指定する方法と、その後でその変数を使用するシナリオについては、「ファイル コントロール プロパティに関する注記」を参照してください。
  11. [データの受信] タブで変数を指定せずにチュートリアルを続行するには、[閉じる] をクリックしてノード ビルダを閉じます。
  12. Workshop メニューから [ファイルArrow symbol保管] を選択します。
  13. この手順によって、ファイル コントロール ノードの設計が完成します。実行時に、「手順 9 : 見積りドキュメントの作成」で作成した見積りドキュメントが、ファイル システム内の指定した場所に書き込まれます。

  14. 手順 10 : ファイル システムへの見積りの書き込み」に進みます。

ファイル コントロール プロパティに関する注記

この節では、前の節で作成した Write Quote to File ノードをさらに詳細に定義するための手順について説明します。チュートリアルを完了させるためにこの手順を行う必要はありません。ここに示す手順は、ファイル コントロールの FileControlPropertiesDocument write(XmlObject someData) メソッドによってビジネス プロセスに返された、「ファイル コントロール プロパティ」を理解して使用できるようにするために用意されています。

この手順で行うように、ファイル コントロールを使用してファイルをファイル システムに書き込むときには、書き込むファイルに関する情報がコントロールから返されます。この情報は、XML 型のドキュメント FileControlPropertiesDocument で返されます。FileControlPropertiesDocument は、XML スキーマ DynamicProperties.xsd に対して有効です。このスキーマは、チュートリアル アプリケーション内の [プロジェクト] にあります。[パッケージ・エクスプローラー] タブのプロジェクトを参照してください。

ビジネス プロセス内の変数にファイル コントロール プロパティを割り当てるには

以下の手順では、ファイル コントロール プロパティが割り当てられる変数の割り当てを含めるように、ビジネス プロセスの Write Quote to File ノードを設計する方法について説明します。

注意 : この節の手順を開始する前に、「ビジネス プロセスにコントロール送信ノードを設計してファイル コントロールと対話するには」で説明した手順 1 から手順 7 までを完了している必要があります。
  1. Write Quote to File ノード ビルダが開いていない場合は、ノードをダブルクリックします。
  2. [データの受信] をクリックして、ノード ビルダに 3 番目のタブを開きます。[コントロールが返す値] フィールドには、write() メソッドから返されるデータ型 FileControlPropertiesDocument が設定されています。
  3. [割り当てる変数を選択します] フィールドで、矢印をクリックしてプロジェクト内の変数のリストを表示し、[変数の新規作成...] を選択します。[変数を作成] ダイアログ ボックスが表示されます。


  4. [変数名] フィールドに fileProperties と入力します。
  5. [変数の型] フィールドに com.bea.wli.control.dynamicProperties.FileControlPropertiesDocument が表示されます。変数の型の選択ペインで system/DynamicProperties.xsd を展開し、[FileControlProperties] を選択します。
  6. 注意 : デフォルトでは、[変数の型] フィールドで com.bea.wli.control.dynamicProperties.FileControlPropertiesDocument が選択されています。
  7. [OK] をクリックします。新しい変数がノード ビルダに表示されます。


  8. ノード ビルダを閉じるには、[閉じる] をクリックします。
  9. Workshop メニューから [ファイルArrow symbol保管] を選択します。
  10. これで、ファイル コントロール ノードの設計は完了しました。実行時に、「手順 9 : 見積りドキュメントの作成」で作成した見積りドキュメントが、ファイル システム内の指定した場所に書き込まれます。書き込んだファイルに関する情報が RequestQuote ビジネス プロセスに返され、作成した fileProperties 変数に割り当てられます。

    注意 : ファイル コントロールからビジネス プロセスに返されるファイル コントロール プロパティを保持する変数を作成する前に、Dynamic Properties.xsd XML スキーマがアプリケーション内のプロジェクトで使用できる必要があります。Dynamic Properties.xsd は、BEA Workshop で BEA Products アプリケーションを作成するときに使用できるシステム スキーマの 1 つです。
ビジネス プロセスでファイル コントロール プロパティを使用するには

前の手順で、ファイル コントロールから返されるデータを変数 fileProperties に割り当てました。書き込んだファイルに関する情報を fileProperties から取得できます。

[ソース] タブをクリックして、RequestQuote.java ファイルをソース ビューで表示します。前の節の手順を完了することによって、以下のコードが Java ファイルに書き込まれます。このコードは、デザイン ビューで行った作業を反映したものです。

fileProperties 変数の宣言が、以下のコード リストに含まれています。

public com.bea.wli.control.dynamicProperties.FileControlPropertiesDocument fileProperties;

myFileQuote コントロールの write() メソッドを、以下のコード リストに示します。

public void myFileQuoteWrite() throws Exception
{
//#START: CODE GENERATED - PROTECTED SECTION - このコメントより前であれば、
安全にコードを追加できる。
        // トランスフォームを入力する
// メソッド呼び出しを返す
this.fileProperties = myFileQuote.write(this.Quote);
// トランスフォームを出力する
// 割り当てを出力する
       //#END: CODE GENERATED - PROTECTED SECTION - このコメントより後であれば、
安全にコードを追加できる。

このメソッドを (コードの PROTECTED SECTION 外で) 編集して、fileProperties 変数から情報を取得するコードを記述できます。たとえば、以下のコード行は FileMask を返します。

this.fileProperties.getFileControlProperties().getFileMask()

この例をさらに説明するため、public void fileQuoteWrite() メソッドをソース ビューで編集して、以下のコード リスト内で太字で示されているコード行を含めます。

//#END  : CODE GENERATED - PROTECTED SECTION - このメソッドのこのコメントより後であれば、安全にコードを追加できる。#//
System.out.println ("RequestQuote プロセスは、次のファイルに見積りのログを記録しました。"
+ this.fileProperties.getFileControlProperties().getFileMask());
}

コードは、PROTECTED SECTION コメントの「後に」追加する必要があります。ソース ビューでコードを完成させると、コードの記述が容易になります。デザイン ビューに戻ると、[Write Quote to File] ノードに アイコンが追加されています。このアイコンによって、このノードに関連付けられているコードをソース ビューで編集したことを視覚的に確認できます。

ビジネス プロセスを実行すると、ファイルに付けた名前 (FileMask) がコンソールに出力されます。

関連トピック

ファイル コントロール

Integration コントロールを使用する


  ページの先頭       前  次