ヘッダーをスキップ
Oracle Fusion Middleware Oracle SOA Suite開発者ガイド
11g リリース1(11.1.1)
B56238-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

48 2レイヤーのビジネス・プロセス管理(BPM)の使用

2レイヤーのBPMを使用すると、動的ビジネス・プロセスを作成できます。動的ビジネス・プロセスの実行は、設計時に事前定義された要素ではなく、そのビジネス・プロセスが実行されるコンテキストの要素に基づいています。 このような要素の例には、顧客のタイプ、地理的位置、チャネルなどがあります。

具体的に説明するために、様々なプロセスを使用してマルチチャネル・バンキングを実行するアプリケーションを使用していると仮定します。 このシナリオでは、各プロセスの実行は、特定のプロセス・インスタンスごとのチャネルに基づいています。

項目は次のとおりです。

48.1 2レイヤーのビジネス・プロセス管理の概要

2レイヤーのBPMを使用すると、レイヤー・アプローチを使用してビジネス・プロセスをモデル化できます。 このモデルの第1レベルは、ビジネス・プロセスに関する抽象的な仕様です。 第1レベルのプロセスのアクティビティは、第2レベルのプロセスまたはサービスに作業を委任します。 図48-1に、この動作を示します。

図48-1 2レイヤーのBPM

2レイヤーのBPMのアーキテクチャ
「図48-1 2レイヤーのBPM」の説明

図48-1では、ビジネス・プロセスのPhase Iアクティビティは、その作業を対応するレイヤーIIのプロセスのタスク1.1、タスク1.2またはタスク1.3のいずれかに委任できます。

2レイヤーのBPM機能を使用すると、重要な要素(つまり、phaseアクティビティ)を宣言的に作成できます。

Oracle Business RulesのDT@RT機能を使用すると、さらにチャネルを動的に追加できます。ビジネス・プロセスを再デプロイする必要はありません。 DT@RTでは、実行時に複数のルール(複数の列)を動的ルーティング・デシジョン表に追加できます。 実行中にビジネス・プロセス・インスタンスはそれらの新規ルールを考慮し、最終的にリクエストを別のチャネルにルーティングします。

また、Oracle Business RulesのDT@RT機能を使用すると、phaseアクティビティから起動されるサービスのエンドポイント参照を別のサービスを指し示すように変更できます。


注意:

Oracle Fusion Middleware 11g リリース1(11.1.1)では、Oracle Business RulesのDT@RT機能はOracle Business Rules SDKを介してのみ使用できます。

Oracle Business Rules SDKの使用方法については、次のマニュアルを参照してください。

  • 『Oracle Fusion Middleware Oracle Business Rulesユーザーズ・ガイド』

  • 『Oracle Fusion Middleware Java API Reference for Oracle Business Rules』


2レイヤーのBPMを有効にする手順は、次のとおりです。

表48-1 2レイヤーのBPMを有効にする手順

手順 情報

Oracle WebLogic Serverのインストール

『Oracle WebLogic Server Installation Guide』


SOAコンポジット・アプリケーションの設計

第4.2.1項「アプリケーションおよびプロジェクトの作成方法」


要素タイプ変数(phaseInおよびphaseOut)の作成

「変数の作成」


phaseアクティビティの作成

第48.2項「phaseアクティビティ」


動的ルーティング・デシジョン表の作成および編集

第48.3項「動的ルーティング・デシジョン表」


BPELプロセス・モデルへのassignアクティビティの追加

付録A.2.2「assignアクティビティ」


アプリケーション・デプロイメント・プロファイルの作成

第43章「SOAコンポジット・アプリケーションのデプロイ」


アプリケーション・サーバー接続の作成

第43.1項「アプリケーション・サーバー接続の作成」


アプリケーションのデプロイ

第43章「SOAコンポジット・アプリケーションのデプロイ」



48.2 phaseアクティビティ

2レイヤーのBPMでは、フェーズはBPELプロセス・モデルのレベル1アクティビティです。 フェーズは、既存の上位レベルBPELアクティビティのビジネス・ルールおよびヒューマン・タスクを補完します。

48.2.1 phaseアクティビティの作成

フェーズをプロセスに宣言的に追加するには、Oracle JDeveloperのBPELデザイナを使用します。他のBPELアクティビティと同様に、「Phase」をBPELアクティビティおよびコンポーネント・パレットからプロセス・モデルにドラッグ・アンド・ドロップします。

図48-2 BPELデザイナでのphaseアクティビティ

図48-2の説明は次にあります。
「図48-2 BPELデザイナでのphaseアクティビティ」の説明


注意:

参照WSDL(レイヤー2またはコールした参照)には、自動作成されるフェーズ参照と同じ抽象的なWSDLが必要です。

48.2.2 phaseアクティビティの作成方法

コンポジット・アプリケーションのphaseアクティビティは、「変数の作成」の説明に従って必要な変数を作成した後に作成します。

レベル1のBPELプロセスに「Phase」をドロップすると、様々な構成手順を支援するウィザードが起動します。 最初に、Phaseアクティビティの作成ダイアログが表示されるため、このダイアログでフェーズの入出力を指定します。

phaseアクティビティを作成する手順は、次のとおりです。

Phaseアクティビティの作成ダイアログで、次の操作を実行します。

  1. 「名前」フィールドに値を入力します。

  2. 緑のプラス記号(+)の「入力と出力」アイコンを選択します。「変数チューザ」ダイアログが表示されます。

  3. 「プロセス」「変数」「phaseIn」の順に選択し、「OK」をクリックします。 phaseIn変数が移入された状態の「Phase」ダイアログ・ボックスが表示されます。

  4. 「入力と出力」アイコンから「出力の選択」を選択します。 「変数チューザ」ダイアログ・ボックスが表示されます。「プロセス」「変数」「phaseOut」の順に選択します。

  5. 「OK」をクリックします。 入出力変数名が移入された状態の「Phase」ダイアログ・ボックスが表示されます。「OK」をクリックします。 BPELデザイナには、このプロセスの.bpelページが表示されます。

  6. 「ファイル」メニューから「すべて保存」をクリックします。 .bpelページを閉じます。

  7. composite.xml」ページをクリックします。 SCAコンポジット・ダイアグラムが表示されます。

48.2.3 phaseアクティビティ作成時の処理内容

phaseアクティビティを作成すると、表48-2に記載されているアーチファクトが作成されます。

表48-2 phaseアクティビティとともに作成されるアーチファクト

アーチファクト 説明

BPELスコープ

phaseアクティビティをドロップしたBPELプロセス・モデル内の場所に、新しいBPELスコープが作成されてBPELプロセスに挿入されます。 スコープには、phaseアクティビティの名前が指定されます。 スコープ内には一連の標準BPELアクティビティが作成されます。 最も重要なアクティビティは、メディエータへのinvokeアクティビティとメディエータからのreceiveアクティビティです。

メディエータ・コンポーネント

BPELコンポーネントのSCAコンポジットとともに、新しいメディエータ・コンポーネントが作成され、BPELコンポーネントのphaseアクティビティに接続されます。このBPELコンポーネントは、プロセス・モデル内でphaseアクティビティがドロップされたレベル1のBPELプロセスを構成するコンポーネントです。 メディエータ・コンポーネントの入出力は、phaseアクティビティの入出力によって定義されます。 メディエータ・プラン(メディエータ・コンポーネントの処理命令)は非常に単純です。処理命令の作成はビジネス・ルール・コンポーネントに委任されます。

ビジネス・ルール・コンポーネント

BPELコンポーネントのSCAコンポジット内に、新しいビジネス・ルール・コンポーネントが作成され、BPELプロセスのphaseアクティビティに関連付けられているメディエータ・コンポーネントに接続されます。 ビジネス・ルール・コンポーネントには、ルール・ディクショナリが含まれています。 ルール・ディクショナリには、ファクト・タイプ、ルールセット、ルール、デシジョン表や同様のアーチファクトなど、ルール・エンジン・アーチファクトのメタデータが含まれています。 ルール・ディクショナリは、ビジネス・ルール・コンポーネントの作成過程で、次のデータを使用して事前に初期化されます。

  • ファクト・タイプ・モデル: ルールのモデル化に使用できるデータ・モデル。 ルール・ディクショナリには、phaseアクティビティの入力に対応するファクト・タイプ・モデルとともに、メディエータ・コンポーネントとビジネス・ルール・コンポーネント間の規定の一部として必要な固定データ・モデルの一部が移入されます。

  • ルールセット: ルールのコンテナであり、ルールのグループ化メカニズムとして使用されます。 ルールセットはサービスとして公開できます。 1つのルールセットがルール・ディクショナリ内に作成されます。

  • デシジョン表: ルール・エンジンから見ると、デシジョン表は、ルールの条件およびアクション部分のファクト・タイプ・モデルの要素が同じであるルールの集合で、それらのルールは表形式で表示できます。 新規デシジョン表はルールセット内に作成されます。

  • デシジョン・サービス: ルールセットをビジネス・ルールSCAコンポーネントのサービスとして公開するために作成されます。 メディエータでは、サービス・インタフェースを使用してデシジョン表を評価します。


48.2.4 phaseアクティビティを作成した場合の実行時の処理内容

phaseアクティビティの入力は、実行時に動的ルーティング・デシジョン表を評価するために使用されます。 評価は、phaseアクティビティの特定のデシジョン・コンポーネントによって実行されます。 この評価の結果が、メディエータに対する指示になります。 メディエータは、デシジョン・コンポーネントからの指示に基づいて、リクエストをサービスにルーティングします。


注意:

phaseアクティビティは実質的に非同期です。 phaseアクティビティを同期または一方向で使用することはできません。

48.2.5 phaseアクティビティの作成に関する注意事項

phaseアクティビティを作成する場合は、次の事項について理解している必要があります。

  • デシジョン・サービスで構成または作成する必要のあるルール。 これは、ルールの評価に使用するペイロードのデータに基づきます。

  • デシジョン・サービスで作成した各ルールがtrueと評価されたときに起動する必要のある、対応するエンドポイントURLを認識している必要があります。 メディエータでは、このエンドポイントURLを使用してレイヤー2のサービスを起動します。

48.3 動的ルーティング・デシジョン表

動的ルーティング・デシジョン表は、ビジネス・ルールによって評価されるデシジョン表です。 phaseアクティビティの入力データに対して条件が評価されます。 この評価の結果が、メディエータに対するルーティング指示になります。

48.3.1 ルーティング・デシジョン表の作成方法

phaseアクティビティを作成すると、ウィザードによってOracle JDeveloperのルール・デザイナが起動され、ルーティング・デシジョン表を編集できるようになります。 図48-3に、ルール・デザイナ内のデシジョン表のサンプルを示します。

図48-3 デシジョン表のサンプル

図48-3の説明は次にあります。
「図48-3 デシジョン表のサンプル」の説明

デシジョン表は、レベル2のプロセス・フェーズをモデル化する際には空のままにし、ビジネス・アナリストのツールを使用してレベル1のプロセスをデプロイした後に完成させることができます。

ルーティング・デシジョン表を作成および編集すると、図48-4に示すように、新規のレベル1のphaseアクティビティがOracle JDeveloperのBPELプロセスに表示されます。

図48-4 Oracle JDeveloperでの完成したレベル1フェーズ

図48-4の説明は次にあります。
「図48-4 Oracle JDeveloperでの完成したレベル1フェーズ」の説明

48.3.2 ルーティング・デシジョン表作成時の処理内容

ルーティング・デシジョン表を作成することで、着信ペイロードに適用される条件を動的に評価し、対応するルーティング・ルールをメディエータに提供するデシジョン・サービスが構成されます。 メディエータは、これらのルールをレイヤー2のサービスの起動時に実行します。

ルーティング・デシジョン表を作成すると、具体的には、設計時に次の処理が行われます。

  • 新しいデシジョン・コンポーネントがプロジェクトのコンポジットに作成されます。

  • 新しいルール・ディクショナリがコンポジット・プロジェクトのディレクトリに作成されます。

  • ルール・ディクショナリに、フェーズ入力のデータ・モデルを反映するデータ・モデルが移入されます。つまり、フェーズ入力のXMLスキーマがルール・ディクショナリにインポートされます。


注意:

ペイロードに対するトランスフォーメーション、割当てまたは検証は実行できません。

48.4 ユースケース: 2レイヤーのBPM

この項では、販売プロセスのユースケースについて説明します。 ユースケースを使用するには、次の手順を実行します。

  1. 『Oracle WebLogic Server Installation Guide』の説明に従って、サーバーをインストールします。

  2. 次のタスクを実行して、サンプルをモデル化します。

    1. 第48.4.1項「SOAコンポジットの設計」の説明に従って、SOAコンポジットを設計します。

    2. 第48.4.2項「phaseアクティビティの作成」

    3. 第48.4.3項「動的ルーティング・デシジョン表の作成および編集」

    4. 第48.4.4項「BPELプロセス・モデルへのassignアクティビティの追加」の説明に従って、assignアクティビティをBPELプロセス・モデルに追加します。

  3. 第48.4.5項「JDeveloperを使用したサンプルのデプロイ」の説明に従って、JDeveloperを使用してサンプルをデプロイします。

48.4.1 SOAコンポジットの設計

JDeveloperでSOAコンポジット・アプリケーションを設計します。

SOAコンポジットを設計する手順は、次のとおりです。

  1. JDeveloperで、「ファイル」メニューから「新規」を選択します。 「新規ギャラリ」ダイアログ・ボックスが表示されます。

  2. 「OK」をクリックします。 「アプリケーションの作成」ダイアログ・ボックスが表示されます。

  3. 「アプリケーション名」フィールドにLoanFlowRouterAppと入力し、「OK」をクリックします。 「プロジェクトの作成」ダイアログ・ボックスが表示されます。

  4. 「プロジェクトの作成」ダイアログ・ボックスで「取消」をクリックします。

  5. 「LoanFlowRouterApp」メニューを右クリックし、「新規プロジェクト」を選択します。 「新規ギャラリ」ダイアログ・ボックスが表示されます。

  6. 「項目」リストから「SOAプロジェクト」を選択し、「OK」をクリックします。 「SOAプロジェクトの作成」ダイアログ・ボックスが表示されます。

  7. 「プロジェクト名」フィールドにLoanFlowRouterと入力し、「コンポジット・テンプレート」リストで「BPELを使用するコンポジット」を選択して、「OK」をクリックします。 「BPELプロセスの作成」ページが表示されます。

  8. 「BPELプロセスの作成」ページの「名前」フィールドにLoanFlowRouterProcessと入力し、「テンプレート」リストから「非同期BPELプロセス」を選択します。 「OK」をクリックします。

  9. AutoLoanTypes.xsdスキーマをプロジェクトのxsdフォルダにインポートします。 AutoLoanTyped.xsdスキーマは、次のとおりです。

    <?xml version="1.0"?>
    <xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified"
    <xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.autoloan.com/ns/autoloan"
    xmlns:tns="http://www.autoloan.com/ns/autoloan">
    <xsd:element name="loanApplication" type="tns:LoanApplicationType"/>
    <xsd:element name="loanOffer" type="tns:LoanOfferType"/>
    <xsd:element name="invalidApplication" type="tns:InvalidApplicationType"/>
    <xsd:element name="loan" type="tns:LoanType"/>
    <xsd:complexType name="InvalidApplicationType">
    <xsd:sequence>
    <xsd:element name="error" type="xsd:string"/>
    <xsd:element name="application" type="tns:LoanApplicationType"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="LoanType">
    <xsd:sequence>
    <xsd:element ref="tns:loanApplication"/>
    <xsd:element ref="tns:loanOffer"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="LoanApplicationType">
    <xsd:sequence>
    <xsd:element name="SSN" type="xsd:string"/>
    <xsd:element name="email" type="xsd:string"/>
    <xsd:element name="customerName" type="xsd:string"/>
    <xsd:element name="loanAmount" type="xsd:double"/>
    <xsd:element name="carModel" type="xsd:string"/>
    <xsd:element name="carYear" type="xsd:string"/>
    <xsd:element name="creditRating" type="xsd:int"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="LoanOfferType">
    <xsd:sequence>
    <xsd:element name="providerName" type="xsd:string"/>
    <xsd:element name="selected" type="xsd:boolean"/>
    <xsd:element name="approved" type="xsd:boolean"/>
    <xsd:element name="APR" type="xsd:double"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    
  10. AutoLoanTypes.xsdスキーマのインポート後に、「LoanFlowRouterProcess.bpel」ページを開きます。

変数の作成


注意:

要素タイプのフェーズ変数のみ使用できます。

  1. 「変数...」アイコンをクリックします。 「変数」ダイアログ・ボックスが表示されます。

  2. 「作成... (Alt + N)」アイコンをクリックします。「変数の作成」ダイアログ・ボックスが表示されます。

  3. 「名前」フィールドにphaseInと入力します。 「要素」オプションをクリックします。

  4. 「要素の参照」アイコンをクリックします。 「タイプ・チューザ」ダイアログ・ボックスが表示されます。

  5. 「プロジェクトのスキーマ・ファイル」「AutoLoanTypes.xsd」「loanApplication」の順に選択し、「OK」をクリックします。 要素名が移入された状態の「変数の作成」ダイアログ・ボックスが表示されます。

  6. 「OK」をクリックします。 変数名が移入された状態の「変数」ダイアログ・ボックスが表示されます。

  7. 「変数」ダイアログ・ボックスで、「作成... (Alt + N)」アイコンをクリックします。「変数の作成」ダイアログが表示されます。

  8. 「名前」フィールドにphaseOutと入力します。 「要素」オプションをクリックします。 「要素の参照」アイコンをクリックします。「タイプ・チューザ」ダイアログが表示されます。

  9. 「プロジェクトのスキーマ・ファイル」「AutoLoanTypes.xsd」「loanOffer」の順に選択し、「OK」をクリックします。 要素名が移入された状態の「変数の作成」ダイアログ・ボックスが表示されます。

  10. 「OK」をクリックします。 入出力変数名が移入された状態の「変数」ダイアログ・ボックスが表示されます。

  11. 「OK」をクリックします。 変数の作成が完了し、「LoanFlowRouterProcess.bpel」ページが表示されます。

48.4.2 phaseアクティビティの作成

JDeveloperを使用して、phaseアクティビティを作成します。

phaseアクティビティを作成する手順は、次のとおりです。

  1. 「LoanFlowRouterProcess.bpel」ページをクリックします。 phaseアクティビティを「BPEL」コンポーネント・パレットからプロセス・モデルにドラッグ・アンド・ドロップします。 「Phase」ダイアログ・ボックスが表示されます。

  2. 「名前」フィールドにrouteToLoanApplicationと入力します。 「入力と出力」プラス(+)アイコンから「入力の選択」を選択します。 「変数チューザ」ダイアログ・ボックスが表示されます。

  3. 「プロセス」「変数」「phaseIn」の順に選択し、「OK」をクリックします。 phaseIn変数が移入された状態の「Phase」ダイアログ・ボックスが表示されます。

  4. 「入力と出力」プラス(+)アイコンから「出力の選択」を選択します。 「変数チューザ」ダイアログ・ボックスが表示されます。

  5. 「プロセス」「変数」「phaseOut」の順に選択します。

  6. 「OK」をクリックします。 入出力変数名が移入された状態の「Phase」ダイアログ・ボックスが表示されます。

  7. 「OK」をクリックします。 「LoanFlowRouterProcess.bpel」ページが表示されます。

  8. 「ファイル」メニューから「すべて保存」をクリックします。 「LoanFlowRouterProcess.bpel」ページを閉じます。

  9. composite.xml」ページをクリックします。 SCAコンポジット・ダイアグラムが表示されます。


注意:

  • phaseアクティビティのウィザードの一環として、ルール、メディエータおよび動的参照の3つのコンポーネントが作成されます。

  • ルール・コンポーネントは、定義されたルールに基づいてメディエータ・コンポーネントに対して実行可能なケースを返します。

  • メディエータ・コンポーネントは、ルール・コンポーネントから受信したルーティング・ルールに基づいてルーティングします。

  • 動的参照コンポーネントは、第2レベルのプロセスのダミー参照です。

  • ルール・ディクショナリに、メディエータのファクト・タイプ・モデルと、phaseアクティビティの入力に対応するファクト・タイプ(この例ではLoanApplicationType)が移入されます。

  • RoutingTableと呼ばれる空のデシジョン表が作成されますが、動的ルーティング・ルールの場合は編集する必要があります。


48.4.3 動的ルーティング・デシジョン表の作成および編集

Oracle JDeveloperを使用して、動的ルーティング・デシジョン表を作成して編集します。

動的ルーティング・デシジョン表を作成して編集する手順は、次のとおりです。

  1. LoanFlowRouterProcess.bpel」ページを開きます。 プロセス・ダイアグラムでphaseアクティビティをダブルクリックします。 「Phase」ダイアログ・ボックスが表示されます。

  2. 「動的ルールの編集」ボタンをクリックします。 ルール・デザイナ・ページが表示されます。

  3. 「タイプ」リストで、「ルールセット」の下にある「Ruleset_1」をクリックします。 「Ruleset_1」ページが空のRoutingTableとともに表示されます。

  4. 「条件」の下にある矢印をクリックし、リストから「loanAmount」を選択します。 リストの上部にあるテキスト・フィールドにLoanApplicationType.loanAmountが移入されます。

  5. 「loanApplicationType.loanAmount」条件を右クリックし、ローカルの範囲リストの編集を選択します。 「バケットセットの編集」ダイアログ・ボックスが表示されます。

  6. 範囲エディタの横にあるクリックして「次以下」範囲-位置を追加アイコン(最初の青いアイコン)をクリックします。 値0(ゼロ)が範囲軸(デフォルト範囲は-10000〜100000)の中央に表示されます

  7. 「最小」フィールドに0(ゼロ)を、「最大」フィールドに100000を入力します。 「最小」「最大」の各フィールドに新規の値が移入されます。

  8. 範囲エディタで間隔アイコンのいずれかをクリックし、0(ゼロ)〜200000の範囲を作成します


    ヒント:

    範囲を調整するには、範囲軸に沿ってマウスで範囲を移動するか、範囲アイコンをクリックし、値を入力してキーボードの[Enter]キーを押します。

  9. 範囲エディタで間隔アイコンのいずれかをクリックし、200000〜500000の範囲を作成します。「OK」をクリックします。 「RoutingTable」ページが表示されます。

  10. 「LoanApplicationType.loanAmount」条件を右クリックし、「分割条件」を選択します。 loanAmount属性のバケットセット定義に従って、R1、R2、R3およびR4などの新規ルール列が条件とともに表示されます。

  11. 「RoutingTable」ページでプラス(+)アイコンをクリックし、「アクションの追加」を選択して、リストから「assert new」を選択します。 「アクションの作成」ダイアログ・ボックスが表示されます。

  12. ファクト・タイプ属性に対してデフォルト値をいくつか入力します。 serviceBindingInfo属性に対して「パラメータ化」オプションを選択します。

  13. 「OK」をクリックします。 ルールR1〜R4に対してアクションが定義された状態の「RoutingTable」ページが表示されます。

  14. 各アクションのパラメータ化された属性に対する値を入力します。 入力する値については、表48-3を参照してください。 この入力によって、「RoutingTable」ページの編集が完了します。

    表48-3 RoutingActionファクト・タイプの属性

    属性 デフォルト 固定 パラメータ化 必須 説明

    caseName


    いいえ

    はい

    いいえ

    説明テキスト(メディエータのmplanで使用)

    cbkOperation

    NULL

    はい

    いいえ

    いいえ


    executionType

    direct

    はい

    いいえ

    はい

    実行タイプには、「direct」または「queued」を指定できます。

    onCbkOperation


    いいえ


    はい

    コールバック操作

    serviceBindingInfo


    いいえ

    はい

    はい

    サービス・エンドポイントのURL

    serviceOperation


    いいえ

    はい

    はい

    サービス操作

    serviceReference


    いいえ

    はい

    はい

    サービス参照


  15. 「LoanFlowRouterProcess.bpel」ページをクリックします。 「Phase」ダイアログ・ボックスで「OK」をクリックします。

  16. 「composite.xml」ページをクリックします。 ルーティング表の作成と編集の完了後にSCAコンポジット・ダイアグラムが表示されます。

  17. 「ファイル」メニューから「すべて保存」をクリックします。 「composite.xml」ページを閉じます。

48.4.4 BPELプロセス・モデルへのassignアクティビティの追加

phaseアクティビティをデプロイする前に、Phase変数を初期化する必要があります。 これを実行するには、BPELプロセスのフェーズにassignアクティビティを追加します。

assignアクティビティをBPELプロセス・モデルに追加する手順は、次のとおりです。

  1. LoanFlowRouterProcess.bpel」ページをクリックします。 assignアクティビティを、「BPEL」コンポーネント・パレットからプロセス・モデルのreceiveInputアクティビティとphaseアクティビティの間にドラッグ・アンド・ドロップします。 assignアクティビティがプロセス・モデルに追加されます。

  2. assignアクティビティをダブルクリックします。「Assign」ダイアログ・ボックスが表示されます。

  3. 「一般」タブの「名前」フィールドにAssignInputと入力します。

  4. 「コピー操作」タブを選択します。 プラス(+)アイコンをクリックし、リストから「コピー操作」を選択します。 「コピー操作の作成」ダイアログが表示されます。

  5. 「12345」に対する入力のコピー操作を作成します。

  6. 手順5と同様に、次の表に記載されているコピー操作を作成します。

    図48-4 assignアクティビティを追加するためのコピー操作

    コピー元 コピー先

    'scott.tiger@oracle.com'

    phaseIn/ns1:loanApplication/ns1:email

    inputVariable/payload/client:LoanFlowRouterProcessProcessRequest/client:input

    phaseIn/ns1:ratingrequest/ns1:customerName

    number(15000.0)

    phaseIn/ns1:loanApplication/ns1:loanAmount

    'BMW'

    phaseIn/ns1:loanApplication/ns1:carModel

    '2000'

    phaseIn/ns1:loanApplication/ns1:carYear

    number(300)

    phaseIn/ns1:loanApplication/ns1:creditRating


  7. 「コピー操作の作成」ダイアログで「OK」をクリックします。 入力のコピー操作値が移入された状態の「Assign」ダイアログ・ボックスが表示されます。

  8. 「OK」をクリックします。 「LoanFlowRouterProcess.bpel」ページが再度表示されます。

  9. 別のassignアクティビティを、「BPEL」コンポーネント・パレットからプロセス・モデルのphaseアクティビティとcallbackClientアクティビティの間にドラッグ・アンド・ドロップします。 新しいassignアクティビティがプロセス・モデルに追加されます。

  10. assignアクティビティをダブルクリックします。 「Assign」ダイアログ・ボックスが表示されます。

  11. 「一般」タブの「名前」フィールドにAssignOutputと入力します。

  12. 「コピー操作」タブを選択します。 プラス(+)アイコンをクリックし、リストから「コピー操作」を選択します。 「コピー操作の作成」ダイアログが表示されます。

  13. 出力のコピー操作を作成します。

  14. 「コピー操作の作成」ダイアログ・ボックスで「OK」をクリックします。 出力のコピー操作値が移入された状態の「Assign」ダイアログ・ボックスが表示されます。

  15. 「OK」をクリックします。 入出力のassignアクティビティが作成された後に、「LoanFlowRouterProcess.bpel」ページが表示されます。

  16. 「ファイル」メニューから「すべて保存」をクリックします。

48.4.5 JDeveloperを使用したサンプルのデプロイ

前述の手順で作成したSOAプロジェクトおよびアプリケーションのアプリケーション・プロファイルをデプロイする必要があります。 JDeveloperを使用してプロファイルをデプロイするには、次の手順を実行します。

48.4.5.1 アプリケーション・デプロイメント・プロファイルの作成

アプリケーション・デプロイメント・プロファイルを作成する手順は、次のとおりです。

  1. LoanFlowRouterAppプロジェクトに隣接する「アプリケーション・メニュー」ドロップダウンをクリックし、「アプリケーション・プロパティ」を選択します。 「アプリケーション・プロパティ」ダイアログ・ボックスが表示されます。

  2. 「デプロイメント」を選択します。 右側のペインに「デプロイメント」ページがある「アプリケーション・プロパティ」ダイアログ・ボックスが表示されます。「新規」をクリックします。 「デプロイメント・プロファイルの作成」ダイアログ・ボックスが表示されます。「アーカイブ・タイプ」から「OARファイル」を選択し、「名前」フィールドにphaseActivityと入力します。「OK」をクリックします。 作成したデプロイメント・プロファイルの名前が「デプロイメント・プロファイル」ペインに表示されます。「デプロイメント・プロファイル」ペインで「phaseActivity」をダブルクリックします。 「OARデプロイメント・プロファイルのプロパティ」ダイアログ・ボックスが表示されます。「アプリケーション・アセンブリ」をクリックし、「sca_LoanFlowRouter」を選択して「OK」をクリックします。「OK」をクリックします。 phaseActivityという名前のデプロイメント・プロファイルが作成されました。

48.4.5.2 アプリケーション・サーバー接続の作成

設計時環境とデプロイ先サーバー間の接続性を確立する必要があります。

アプリケーション・サーバー接続を作成する手順は、次のとおりです。

  1. 「ファイル」メイン・メニューから、「新規」「接続」「アプリケーション・サーバー接続」の順に選択します。

  2. 「OK」をクリックします。

  3. 「接続名」フィールドに、接続名を入力します。

  4. 「接続タイプ」リストで「WebLogic 10.3」を選択します。

  5. 「次へ」をクリックします。

  6. 「ユーザー名」フィールドに、weblogicと入力します。

  7. 「パスワード」フィールドに、アプリケーション・サーバーに接続するためのパスワードを入力します。

  8. 「次へ」をクリックします。

  9. SOAインフラストラクチャで構成されているアプリケーション・サーバーのホスト名を入力します。

  10. 「WLSドメイン」フィールドに、Oracle WebLogic Serverドメインを入力します。

  11. 「次へ」をクリックします。

  12. 「接続のテスト」をクリックします。 テストが成功した場合は、成功のメッセージが表示されます。

  13. 「終了」をクリックします。

  14. 「ファイル」メニューから「すべて保存」をクリックします。

48.4.5.3 アプリケーションのデプロイ

これで、コンポジット・アプリケーションをOracle WebLogic Serverにデプロイする準備ができました。

アプリケーションをデプロイする手順は、次のとおりです。

  1. 「アプリケーション・メニュー」ドロップダウンをクリックし、「デプロイ」→「deployment_profile_name」→「デプロイ先」→「appserver_connection_name」の順に選択します。

  2. 「リビジョンID」ダイアログ・ボックスで「OK」をクリックします。

  3. 「デプロイメント計画」ダイアログ・ボックスで「OK」をクリックします。