Oracle B2Bは、B2Bトランザクションを作成するためのWebベース・インタフェースとなります。
項目は次のとおりです。
Oracle B2Bを含むOracle SOA Suiteをインストールする他に、次の製品をインストールする必要があります。
Oracle B2Bドキュメント・エディタの標準ベースのテンプレートを使用して、ガイドライン・ファイルを作成します。次に、Oracle B2Bを使用して、B2Bアグリーメントの一部としてトランザクションを作成してデプロイします。SOAコンポジット・アプリケーションにB2Bトランザクションを組み込むには、図2-1に示すOracle JDeveloperを使用します。
図2-1 Oracle JDeveloper: B2Bバインディング・コンポーネントを含むSOAコンポジット・アプリケーション
詳細は、次の説明を参照してください。
『Oracle Fusion Middleware Oracle SOA Suiteインストレーション・ガイド』。Oracle SOA Suiteの一部としてのOracle B2Bのインストールに関する情報が記載されています。
Oracle B2Bドキュメント・エディタの「ヘルプ」メニュー。
Oracle JDeveloperの「ヘルプ」メニュー。
この手順では、Oracle B2Bを含むOracle SOA Suiteがすでにインストールされていることを前提にしています。詳細は、『Oracle Fusion Middleware Oracle SOA Suiteインストレーション・ガイド』を参照してください。
サポートされている次のWebブラウザを使用します。
Microsoft Internet Explorer 7.xおよび8.x
Mozilla Firefox 2.xおよび3.x
Apple Safari 4.x
Oracle B2Bにログインする手順は、次のとおりです。
サポートされているWebブラウザを開き、次のURLにアクセスします。
http://host_name:port_number/b2bconsole
ここで、
host_name
は、Oracle SOA Suiteがインストールされているホストの名前です(クラスタ環境では、host_name
にフロントエンドのロード・バランサを指定できます)。
port_number
は、管理対象サーバーが通常のHTTP(非SSL)接続をリスニングするために使用するポート番号です(クラスタ環境では、port_number
にルーター・ポートを指定できます)。
詳細は、第2.2.1項「ポート情報の検索」を参照してください。
/b2bconsole
(または/b2b
)はB2Bインタフェースにアクセスします(/b2b
は/b2bconsole
にリダイレクトされます)。
/b2bconsole
および/b2b
設定をOracle HTTP Serverのmod_wl_ohs.conf
ファイルに追加してOracle B2Bユーザー・インタフェース・ページを保護する方法については、第2.2.2項「シングル・サインオン(SSO)を使用したOracle B2Bへのアクセス」を参照してください。
注意: SAMLが有効な場合またはWindowsのネイティブ認証環境でOracle B2Bにアクセスするには、次の保護されたサーブレットURLのいずれかを自動認証のために使用します。http://host_name:port_number/b2b/ssologin http://host_name:port_number/b2bconsole/ssologin |
ログイン・ページで、次のフィールドに入力します。
フィールド | 作業 |
---|---|
ユーザー名 | デフォルトの管理者ユーザー名を入力します。 |
パスワード | Oracle Fusion Middleware 11gインストール時の管理者パスワードを使用します。 |
Oracle WebLogic Server管理コンソールからの検索
コンソールにログインします。
図2-2に示すように、「ドメイン構造」ペインで、「環境」を展開して「サーバー」をクリックします。
使用しているサーバーの「リスニング・ポート」列の値を書き留めてください。
MW_HOME
/user_projects/domains/
your_domain_name
/config/config.xml
からの検索
<server>
<name>soa_server1</name>
<ssl>
<name>soa_server1</name>
<listen-port>8002</listen-port>
</ssl>
<machine>LocalMachine</machine>
<listen-port>8001</listen-port>
<listen-address/>
</server>
Oracle Identity ManagementのSSOを使用してOracle B2Bにログイン、ログアウトおよび再ログインするには、次のように/b2bconsole
の場所をOracle HTTP Serverのmod_wl_ohs.conf
ファイルに追加する必要があります。
<Location /b2bconsole> SetHandler weblogic-handler # PathTrim /weblogic ErrorPage http:/WEBLOGIC_HOME:WEBLOGIC_PORT/ </Location>
この操作に加えて、/b2b
の場所について次の設定が必要です。
<Location /b2b> SetHandler weblogic-handler # PathTrim /weblogic ErrorPage http:/WEBLOGIC_HOME:WEBLOGIC_PORT/ </Location>
Oracle Internet Directory(OID)のweblogic
ユーザーが管理者としてOracle B2Bにログインし、ユーザーを検索するには、OID認証者に管理者グループがあり、weblogic
ユーザーがそのグループのメンバーである必要があります。
weblogicユーザーを有効にする手順は、次のとおりです。
LDAPブラウザを使用して、weblogicユーザーをOIDに作成します。次に示すように、users.ldif
ファイルがOIDにインポートされます。
dn: cn=weblogic,cn=Users,dc=us,dc=oracle,dc=com objectclass: inetorgperson objectclass: organizationalPerson objectclass: person objectclass: orcluser objectclass: orcluserV2 objectclass: top sn: weblogic userpassword: welcome1 uid: weblogic
管理者グループをOIDに作成し、weblogic
ユーザーをそのグループに割り当てます。次に示すように、groups.ldif
ファイルがOIDにインポートされます。
dn: cn=Administrators,cn=Groups,dc=us,dc=oracle,dc=com objectclass: groupOfUniqueNames objectclass: orclGroup objectclass: top owner: cn=orcladmin,cn=Users,dc=us,dc=oracle,dc=com uniquemember: cn=weblogic,cn=Users,dc=us,dc=oracle,dc=com
図2-3に示す「管理」ページの各タブを使用して、インポートとエクスポート、ドキュメント・プロトコル、デプロイメント、タイプ、バッチ処理、コールアウト、パージ、リスニング・チャネルおよびB2B構成を管理します。
詳細は、第III部「Oracle B2Bの管理」を参照してください。
図2-4に示す「パートナ」ページの各タブを使用して、取引パートナ情報の作成と更新、アグリーメント情報の作成と更新、ユーザー情報の追加、ドキュメントの取引パートナとの関連付け、チャネルの設定、およびキー・ストアの構成を行います。
詳細は、第II部「Oracle B2Bプロセス・フロー」を参照してください。
図2-5に示す「レポート」ページの各タブを使用して、インスタンス(ランタイム)データに関するレポートを作成および表示します。
詳細は、第17章「レポートの作成」を参照してください。
図2-6に示す「メトリック」ページの各タブを使用して、アクティブなドキュメント・タイプと取引パートナのリストなどのデプロイ済アグリーメントと、エラー・メッセージやメッセージ数などのランタイム・ステータスを表示します。
詳細は、第18章「B2Bメトリックの使用」を参照してください。
図2-7に、B2Bプロセス・フローを示します。このフローは、Oracle B2Bドキュメント・エディタでのB2Bガイドライン・ファイルの作成から開始し、Oracle B2Bインタフェースを使用したドキュメント定義の作成、取引パートナの構成およびアグリーメントの作成とデプロイへと続きます。
ステップ1: Oracle B2Bドキュメント・エディタでのガイドライン・ファイル(ECSファイルおよびオプションのXSDファイル)の作成
図2-8に示すOracle B2Bドキュメント・エディタを使用して、数百の業界標準プロトコルのテンプレートに基づいてトランザクション・ドキュメントを作成します。Oracle B2Bドキュメント・エディタが必要になるのは、トランスレーションが必要な場合のみです。XMLドキュメントの場合は、エディタを使用しません。
Oracle B2Bドキュメント・エディタについては、次を参照してください。
Oracle B2Bドキュメント・エディタの「ヘルプ」メニュー(図2-9を参照)
ステップ2: ドキュメント定義の作成
図2-10に示すように、Oracle B2Bの「管理」 > 「ドキュメント」タブを使用して、ドキュメント・プロトコルのリストからプロトコルを選択し、ドキュメント・プロトコル・バージョン名、ドキュメント・タイプ名およびドキュメント定義名を指定します(カスタム・ドキュメントの場合は、ドキュメント・プロトコルのリストから選択するのではなく、カスタム・プロトコル名を「ドキュメント・プロトコル」フォルダのリストに追加します)。
ステップ1で作成したECSファイルとオプションのXSDファイルを選択すると、ドキュメント定義が作成されます。
詳細は、第4章「ドキュメント定義の作成」」を参照してください。
ステップ3: 取引パートナの構成
図2-11に示すように、Oracle B2Bの「パートナ」ページの各タブを使用して、取引パートナ名の追加または更新、識別子とオプションのコンタクト情報の追加、パラメータの表示、ドキュメントとデリバリ・チャネルの追加、キー・ストア情報の追加を行います。
詳細は、第5章「取引パートナの構成」」を参照してください。
ステップ4: アグリーメントの作成
図2-12に示すように、Oracle B2Bの「パートナ」 > 「アグリーメント」タブを使用してアグリーメントを作成し、該当する取引パートナを指定してドキュメント定義、チャネルおよび識別子を関連付けます。
詳細は、第6章「取引パートナ・アグリーメントの作成とデプロイ」を参照してください。
ステップ5: アグリーメントのデプロイ
図2-13に示すように、Oracle B2Bの「管理」 > 「デプロイ」タブを使用して、アグリーメントを検索およびデプロイします。
SOAコンポジット・アプリケーションでOracle B2Bバインディング・コンポーネントを使用すると、バックエンド・アプリケーションが生成した発注を取引パートナに送信するなどのエンドツーエンドのビジネス・プロセスを作成できます。バインディング・コンポーネントは、SOAコンポジット・アプリケーションと外部との接続を確立します。
Oracle JDeveloperのB2B構成ウィザードを使用すると、B2Bバインディング・コンポーネントをSOAコンポジット・アプリケーションに追加できます。
サービス(インバウンド)として使用するB2Bは、取引パートナからメッセージを受信し、そのメッセージをSOAコンポジット・アプリケーションに配信します。Oracle B2Bは、SOAコンポジット・アプリケーションへのエントリ・ポイントです。
参照(アウトバウンド)として使用するB2Bは、SOAコンポジット・アプリケーションからパートナにメッセージを送信します。
B2B構成ウィザードの各ステップに従うと、Oracle B2Bで作成したドキュメント定義を選択するように求められます。また、ウィザードからOracle B2Bを起動して、ドキュメント定義を作成することもできます。これがペイロード、つまり取引パートナとの間で送受信するメッセージです。
注意: B2B構成ウィザードでは、ミドルウェア(B2B Webサービス)でSSLが有効な場合、このウィザードによってSSLポートが検出され、SSL接続を使用してドキュメント定義が取得されます。 |
B2Bバインディング・コンポーネントを含むSOAコンポジット・アプリケーションを作成する手順は、次のとおりです。
SOAコンポジット・アプリケーションの作成の詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』の次の説明を参照してください。
"ワイヤの追加に関する項
"セキュリティの追加に関する項
"SOAコンポジット・アプリケーションのデプロイに関する項
"SOAコンポジット・アプリケーションの管理とテストに関する項
Oracle JDeveloper Studio Editionバージョン11.1.1.2.0を起動します。
Oracle JDeveloperを初めて実行する場合は、Java JDKの場所を指定します。
表2-1の説明に従って、新しいSOAコンポジット・アプリケーションを作成します。
表2-1 SOAコンポジット・アプリケーションの作成
Oracle JDeveloperの状態 | 操作 |
---|---|
アプリケーションがない状態 例: Oracle JDeveloperを初めて開いた場合 |
左上の「アプリケーション・ナビゲータ」で、「新規アプリケーション」をクリックします。 |
既存のアプリケーションがある状態 |
「ファイル」メイン・メニューまたは「アプリケーション」メニューから次の操作を実行します。
|
SOAアプリケーションの作成ウィザードが起動します。
「アプリケーションの名前付け」ページで、必要に応じて、Webプロジェクトの名前と場所を変更できます。これが最初のアプリケーションの場合は、「アプリケーション・テンプレート」から「SOAアプリケーション」を選択します。パッケージ接頭辞のデフォルトをそのまま使用し、「次へ」をクリックします。
「プロジェクトの名前付け」ページで、必要に応じて、SOAプロジェクトの名前と場所を変更できます。Oracle JDeveloperでは、モデル・プロジェクトに対してデフォルトで、SOAプロジェクト・テクノロジ、生成されたcomposite.xml
、および必要なライブラリが追加されます。「次へ」をクリックします。
注意: コンポジットとコンポーネントの名前は、500文字を超えることはできません。 |
同じインフラストラクチャにデプロイするプロジェクトの名前は、SOAコンポジット・アプリケーション全体で一意である必要があります。コンポジットの一意性は、そのコンポジットのプロジェクト名によって確定されます。たとえば、表2-2に説明するような操作は実行しないでください。1番目のデプロイ済プロジェクト(コンポジット)は、デプロイメント時に2番目のデプロイ済プロジェクト(コンポジット)によって上書きされます。
表2-2 SOAプロジェクトの名前付けに関する制限(注意: この操作によって1番目のデプロイ済プロジェクトは上書きされます。)
作成するアプリケーション名 | SOAプロジェクト名 |
---|---|
|
|
|
|
SOAアプリケーションの作成ウィザードのプロジェクトのSOA設定ページが表示されます。
SOA設定の構成ページで、「空のコンポジット」をクリックし、「終了」をクリックします。
「ファイル」メイン・メニューから「すべて保存」を選択します。
SOAアプリケーションとプロジェクトの作成の詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。
サービス・コンポーネントは、アプリケーションのビジネス・ロジックまたは処理ルールを実装します。
「コンポーネント・パレット」から「SOA」を選択します。
「サービス・コンポーネント」リストからコンポーネントをデザイナにドラッグします。
図2-14に、デザイナに追加されるBPELプロセスを示します。
選択したサービス・コンポーネント固有のダイアログが表示されます。表2-3に、使用可能なエディタを示します。
表2-3 サービス・コンポーネント・エディタの起動
ドラッグするサービス・コンポーネント | 起動する対象 |
---|---|
BPELプロセス |
「BPELプロセスの作成」ダイアログが起動し、一連のビジネス・アクティビティとサービスをエンドツーエンドのプロセス・フローに統合するBPELプロセスを作成できます。 |
ビジネス・ルール |
「ビジネス・ルールの作成」ダイアログが起動し、ルールに基づいてビジネス上の意思決定を作成できます。 |
ヒューマン・タスク |
「ヒューマン・タスクの作成」ダイアログが起動し、エンドツーエンドのビジネス・プロセス・フローの一部として、ユーザーまたはグループが実行するタスクを説明するワークフローを作成できます。 |
メディエータ |
「メディエータの作成」ダイアログが起動し、メッセージとイベントのルーティング、フィルタ処理およびトランスフォーメーションを実行するサービスを定義できます。 |
サービス・コンポーネントの設定値を構成します。サービス・コンポーネントのダイアログに関するヘルプについては、「ヘルプ」をクリックするか、[F1]を押してください。「終了」をクリックします。
「OK」をクリックします。
「ファイル」メイン・メニューから「すべて保存」を選択します。
サービス・コンポーネントの追加の詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。
サービス・バインディング・コンポーネントまたは参照バインディング・コンポーネントを追加します。
「コンポーネント・パレット」から「SOA」を選択します。
「B2B」を「公開されたサービス」または「外部参照」スイムレーンにドラッグします。
インバウンド・メッセージを受信するには、「公開されたサービス」を選択します。
アウトバウンド・メッセージを送信するには、「外部参照」を選択します。
B2B構成ウィザードの「ようこそ」ページで、「次へ」をクリックします。
「サービス名」ページでB2Bサービスの名前を指定し、「次へ」をクリックします。
表2-4の説明に従って、「B2B統合型」ページで統合型を選択します。
「アプリケーション・サーバー接続」ページで、次のいずれかを実行します。
「AppServer接続」リストからアプリケーション・サーバー接続を選択し、「次へ」をクリックします。
または、「新規」をクリックし、アプリケーション・サーバー接続を作成します。アプリケーション・サーバー接続の作成ウィザードの手順に従います。
アプリケーション・サーバー接続が確立されると、アプリケーション・サーバー接続用に作成されたユーザー名、サーバー・インスタンスのホスト名およびSOAサーバー名の情報が表示されます。アプリケーション・サーバー接続を選択すると、Weblogicで構成されて動作するSOAサーバーが表示されます。SOAサーバーを選択すると、SSLまたはHTTPポートが取得され、ドキュメント定義を取得するためのB2B WebサービスのURLが生成されます。
「B2Bテスト」をクリックして、Oracle B2Bインストールへの接続を検証することもできます。
表2-5の説明に従って、「操作」ページで「送信」または「受信」を選択します。
表2-6の説明に従って、「ドキュメント定義の処理」ページで「標準」タブのオプションまたは「詳細」タブのオプションのいずれかを選択します。
表2-6 「ドキュメント定義の処理」のオプションの選択
オプション | 説明 |
---|---|
「標準」タブ |
- |
B2Bからのスキーマのインポート |
Oracle B2Bからスキーマをインポートします(「詳細」タブのオプションと同じ)。 |
「詳細」タブ |
- |
B2Bからのスキーマのインポート |
Oracle B2Bからスキーマをインポートします(「標準」タブのオプションと同じ)。 |
B2Bリポジトリでスキーマを参照します |
メタデータ・サービス(MDS)接続を選択します。または、このオプションを使用して新しい接続を作成します。新しいMDS接続を作成する場合は、MDS接続ウィザードを使用して接続を作成します。この接続は、B2Bリポジトリへのアクセスに必要です。ドキュメント定義を選択すると、MDSにリンクするURLが生成されます。 選択したアプリケーション・サーバー接続は特定のB2Bインスタンスを参照します。ドキュメント定義が矛盾しないように、特定のB2Bインスタンスによって使用されるMDS接続は、選択したMDS接続と一致している必要があります。 B2Bリポジトリ内のスキーマを参照するとき、MDS接続はリモートMDS内のスキーマを参照する場合にのみ必要であり、ローカル共有MDSリポジトリ内でスキーマを参照する場合は必要ありません。 ローカル共有MDS内のB2Bスキーマ |
リソース・スキーマの参照 |
SOAリソース・ブラウザを使用してスキーマを参照します。このオプションを選択すると、「タイプ・チューザ」が開きます。タイプを選択して「ドキュメント定義の処理」ページに戻ります。 |
不透明 |
コンテンツがbase-64エンコーディングで渡された場合に任意のタイプのデータ(位置指定フラット・ファイルなど)を処理します。スキーマは指定しません。 |
anyType |
XMLデータのすべてのタイプを処理します。スキーマは指定しません。 |
「デフォルト」統合型に対して「添付サポート」を選択し、B2BのWSDLファイルに添付用のメッセージ・パートを含めることもできます。
「ドキュメント定義」ページで、ツリーを展開してドキュメント定義を選択します。複数のルート要素が含まれたドキュメント定義を選択した場合は、使用するルート要素を選択して「OK」をクリックします。
表2-7に、このページの他のオプションを示します。
表2-7 「ドキュメント定義」ページのオプション
オプション | 説明 |
---|---|
検索 |
定義名を入力します。定義名の先頭部分を入力すると、部分文字列が照合されます。ワイルドカードが含まれた部分文字列は使用できません。 |
リフレッシュ |
B2Bサーバーからドキュメント定義リストを取得します。すべてのドキュメント定義を表示するには、検索後にリフレッシュします。 |
B2B構成 |
「アプリケーション・サーバー接続」ページで指定した接続を使用して、Oracle B2Bに対してブラウザを開きます。Oracle B2Bでは、ドキュメント定義を作成してアグリーメントに含め、そのアグリーメントをデプロイできます。次に、このダイアログに戻って「リフレッシュ」をクリックし、新しいドキュメント定義を選択します。 |
ルーティングIDの使用 |
ドキュメント・ルーティングIDを使用するすべてのドキュメント定義を選択します。詳細は、第8.10項「ドキュメント・ルーティングIDの使用」を参照してください。 |
次のように、選択した統合型に従って、それぞれのステップに進みます。
「終了」ページで、「終了」をクリックします。
「サービス接続」ページで、次のいずれかを実行します。
「接続」リストからデータベース接続を選択し、「次へ」をクリックします。
または、「新規」をクリックし、アプリケーション・サーバー接続を作成します。アプリケーション・サーバー接続の作成ウィザードの手順に従います。
表2-8に、データベース接続の確立時に表示される情報を示します。
表2-8 サービス接続
パラメータ | 説明 |
---|---|
ユーザー名 |
データベース接続用に作成されたユーザー名。 |
ドライバ |
JDBCドライバが表示されます。 |
接続文字列 |
JDBC接続文字列が表示されます。 |
JNDI名 |
デフォルトのJavaネーミング・ディレクトリ・インタフェース(JNDI)名を使用するか、カスタム名を指定します。この接続を使用すると、設計時にアダプタを構成し、実行時にデータベース・サーバーに接続できます。 |
データ・ソース |
data-sources.xmlのデータ・ソースを参照するために使用するJNDI名を入力します。data-sources.xmlを使用して接続を取得する場合は、この名前が必要です。 |
XAデータ・ソース |
データ・ソース名がXAデータ・ソースの場合は、このオプションを選択します。XAデータ・ソースは、複数のリソースにまたがる可能性があるXAグローバル・トランザクションに参加できます。このトランザクションでのアプリケーション・サーバーは、それぞれが単一のトランザクションに関係している複数のデータベース(またはJMSなどの他のリソース)を調整するトランザクション・マネージャとして機能します。このオプションを選択した場合、アダプタはXAトランザクションの一部になります。選択しない場合、アダプタはローカル・トランザクションになります。 |
「キュー名」ページで、データベース・スキーマとキュー名を選択します。
B2Bのキューで使用できるのは、IP_MESSAGE_TYPE
タイプのみです。
「キュー・パラメータ」ページで、次の情報を入力します。
エンキュー操作の場合は、受信者名、またはカンマ区切りの受信者リストを入力します。受信者を入力しない場合、メッセージはキューのすべてのサブスクライバに送信されます。このフィールドは、アウトバウンド・ヘッダーにRecipientListフィールドを設定することで、メッセージごとにオーバーライドできます。デフォルト値は「b2buser」です。
デキュー操作の場合は、次の情報を入力します。
コンシューマ: キューをサブスクライブするエージェントの名前。このフィールドは必須フィールドで、30文字までに制限されています。デフォルト値は「b2buser」です。
メッセージ・セレクタ・ルール: メッセージ・プロパティまたはメッセージ・コンテンツに基づいてメッセージをデキューするオプションのフィルタ処理ロジック(例: priority < 5またはtab.user_data.amount > 10000)。ルールを指定すると、コンシューマ名を使用したエージェントとメッセージ・セレクタ・ルールがキューに作成されます。コンシューマ名は新しいエージェント名である必要があります。これは、アダプタでは以前に作成したエージェントのメッセージ・セレクタ・ルールが変更されないためです。入力したロジックに対して検証は実行されません。
デキュー条件: SQL問合せのWHERE
句に類似したブール式。この式には、メッセージ・プロパティ、ユーザー・データ・プロパティ(オブジェクト・ペイロードのみ)およびPL/SQLまたはSQL関数に関する条件を含めることができます。複数のメッセージがデキュー条件を満たしている場合、デキューの順序は未確定になり、キューのソート順序は考慮されません。
「終了」をクリックします。
「JMSプロバイダ」ページで、次のいずれかを選択します。
Oracle Enterprise Messaging Service (OEMS): Oracle WebLogic JMSまたはOracle Advanced Queuing
OEMSは、JMSおよびJ2EE Connector Architecture(JCA)に基づいており、サービス指向アーキテクチャ環境における分散アプリケーションの開発と統合に使用できます。このメッセージング・プラットフォームでは、メッセージの永続性とリカバリに対するサービスが提供されます。
サード・パーティ: サード・パーティのJMSプロバイダ(Tibco JMSやIBM WebSphere MQ JMSなど)にメッセージが保持されます。
Oracle WebLogic JMSまたはOracle Advanced Queuingを選択すると、「サービス接続」ページが表示されます。「サービス接続」ページで、次のいずれかを実行します。
「AppServer接続」リストから既存のアプリケーション・サーバー接続を選択し、「次へ」をクリックします。
または、「新規」をクリックし、アプリケーション・サーバー接続を作成します。アプリケーション・サーバー接続の作成ウィザードの手順に従います。
「サード・パーティ」を選択すると、「JMS接続」ページが表示されます。「JMS接続」ページでJMS接続のJNDI名を指定し、「次へ」をクリックします。
ステップ7で「送信」を選択した場合は、「発行操作のパラメータ」ページが表示されます。ステップ7で「受信」選択した場合は、「消費操作のパラメータ」ページが表示されます。
「発行操作のパラメータ」ページで次の情報を指定し、「次へ」をクリックします。
接続先名: メッセージの生成元であるキューまたはトピックのJNDI名を入力するか、「参照」をクリックして名前を選択します。このフィールドの値は通常、JNDI名です。
メッセージ本文のタイプ: メッセージ本文(ペイロード)のタイプを選択します。
TextMessage: ペイロードが文字列の場合は、このオプションを使用します。
BytesMessage: ペイロードがプリミティブ・バイトの配列の場合は、このオプションを使用します。
配信モード: メッセージの配信モードを選択します(Oracle WebLogic JMSを選択した場合のみ)。
永続: メッセージをファイル・システムまたはデータベースに保持する場合は、このオプションを使用します。
非永続: メッセージを保持せず、通常のプロセス・メモリーにのみ格納する場合は、このオプションを使用します。
優先度: 優先度の値を選択します。9が最も高い優先度、0が最も低い優先度を表します。
TimeToLive: メッセージの存続時間を示す値を入力します。特定の時間内にメッセージを消費するサブスクライバがない場合、メッセージは配信されません。制限はありません。0(ゼロ)の値は有効期限がないことを示します。
JNDI名: 「接続先名」フィールドでの選択に基づいてJNDI名が表示されます(Oracle WebLogic JMSまたはOracle Advanced Queuingを選択した場合のみ)。
「消費操作のパラメータ」ページで次の情報を指定し、「次へ」をクリックします。
接続先名: メッセージの消費先であるキューまたはトピックのJNDI名を入力するか、「参照」をクリックして名前を選択します。
メッセージ本文のタイプ: メッセージ本文(ペイロード)のタイプを選択します。
TextMessage: ペイロードが文字列の場合は、このオプションを使用します。
BytesMessage: ペイロードがプリミティブ・バイトの配列の場合は、このオプションを使用します。
メッセージ・セレクタ: 特定の基準に一致するメッセージの受信を可能にするフィルタ処理ロジックを指定します。1〜255の長さの文字を使用して式を入力します。このフィールドではSQL92構文を使用します。JMSサーバーでは、これらの基準を使用してこのコンシューマが受信したメッセージをフィルタ処理します。これは、標準JMSヘッダーおよびユーザー定義プロパティに定義されている変数を使用して処理されます。メッセージのペイロードにある変数または要素は使用できません。
MessageListenerを使用: 「JMSプロバイダ」ページでOracle WebLogic JMSを選択した場合、このオプションはデフォルトで「false」に設定されます。このオプションは編集できません。「JMSプロバイダ」ページでOracle Advanced Queuingを選択した場合(Oracle Advanced Queuingまたは「サード・パーティ」を選択した場合のみ)は、「true」または「false」を選択します。
永続サブスクライバID: JMSトピックからメッセージを受信するためのIDを入力します。IDを指定しない場合は、メッセージを受信するためにアクティブなサブスクリプション・セッションが必要です。トピックのIDを指定した場合は、現在アクティブなサブスクリプション・セッションがない場合でも、メッセージを受信します。永続サブスクライバがJMSサーバーから切断されている場合は、そのサーバーにメッセージが格納されます。永続サブスクライバが再接続されると、累積されていた有効なメッセージはサーバーによって送信されます(「サード・パーティ」を選択した場合のみ)。
JNDI名: 「接続先名」フィールドでの選択に基づいてJNDI名が表示されます(Oracle WebLogic JMSまたはOracle Advanced Queuingを選択した場合のみ)。
ストリーミングの有効化: この機能を有効にすると、ペイロードがデータベースにストリームされます。この機能は、大きなペイロードに対して使用します。ストリーミングを有効にすると、対応するブール・プロパティのStreamPayload
が、各.jca
ファイルに定義されているActivationSpec
プロパティに追加されます。StreamPayloadプロパティが存在しない場合は、デフォルト値のfalse
が使用されます。このプロパティを適用できるのは、ADT
属性を介してペイロードが指定されるRaw
メッセージ、XMLType
メッセージおよびADT
タイプ・メッセージを処理する場合です。
「終了」をクリックします。
バインディング・コンポーネントの詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』の次の説明を参照してください。
サービス・バインディング・コンポーネントの追加に関する項
参照バインディング・コンポーネントの追加に関する項
バインディング・コンポーネントのスタート・ガイドに関する項
JMS統合型を選択する場合は、jca.jms.JMSProperty.
property_name
のように、接頭辞がjca.jms.JMSProperty
のJMSプロパティを使用する必要があります(これに対して、B2B構成ウィザードで「デフォルト」または「AQ」の統合型を選択する場合は、MSG_ID
、INREPLYTO_MSG_ID
、FROM_PARTY
、TO_PARTY
、ACTION_NAME
、MSG_TYPE
、DOCTYPE_NAME
およびDOCTYPE_REVISION
などのメッセージ・プロパティを、変更なしにSOAコンポジット・アプリケーションで使用できます)。
表2-9に、Oracle JCA Adapter for JMSと併用するJMSプロパティを示します。
表2-9 JMSアダプタのプロパティ
プロパティ名 | Oracle JCA Adapter for JMSと併用する場合のプロパティ名 |
---|---|
MSG_ID |
jca.jms.JMSProperty.MSG_ID |
INREPLYTO_MSG_ID |
jca.jms.JMSProperty.INREPLYTO_MSG_ID |
FROM_PARTY |
jca.jms.JMSProperty.FROM_PARTY |
TO_PARTY |
jca.jms.JMSProperty.TO_PARTY |
ACTION_NAME |
jca.jms.JMSProperty.ACTION_NAME |
MSG_TYPE |
jca.jms.JMSProperty.MSG_TYPE |
DOCTYPE_NAME |
jca.jms.JMSProperty.DOCTYPE_NAME |
DOCTYPE_REVISION |
jca.jms.JMSProperty.DOCTYPE_REVISION |
ATTACHMENT |
jca.jms.JMSProperty.ATTACHMENT |
A2A |
jca.jms.JMSProperty.A2A |
JMSメッセージ相関の場合、プロパティA2A=true
を設定します。MSG_ID
がバックエンド・アプリケーションから提供されている場合、MSG_ID
はB2Bの出力でJMS相関IDとして設定されます。それ以外の場合は、JMSメッセージIDがB2Bの出力でJMS相関IDに設定されます。
たとえば、これらの送信者のプロパティと値は、図2-15に示すように、アウトバウンド・コンポジットに対するメディエータ・コンポーネントの「値の割当て」ダイアログに追加されます。
SOAサンプル・アプリケーションのFusion Order Demoには、B2BコンポジットのB2BX12OrderGatewayが含まれています。このデモでは、取引パートナがEDIの発注リクエスト(850)をB2Bに送信します。取引パートナがこれを実行するには、B2Bがリスニング・チャネルを介してリスニングしているディレクトリにファイルをドロップします。B2Bは、標準のEDI 850を取得してその内容をデータの共通表現である標準形式に変換し、ストアフロント・サービスを起動します。このストアフロント・サービスは、ストアフロント・データのトランザクション・サポートにアクセスして、顧客データ、注文データおよび製品データを更新するコンポジットです。
発注金額が$2,000(ビジネス・ルールで決定します)を超える場合、その発注は手動で承認するためにヒューマン・ワークフローにルーティングされます。発注金額が$2,000未満の場合、承認は不要です。発注が承認されると、発注レスポンス(855)が生成されて取引パートナに送信されます。
図2-16に、Oracle JDeveloperのB2BX12OrderGatewayコンポジットを示します。
Fusion Order DemoアプリケーションのZIPファイル(FusionOrderDemo_R1PS3.zip
)は、次のWebサイトからダウンロードします。
http://www.oracle.com/technetwork/developer-tools/jdev/index-095536.html
SOAサンプル・アプリケーションの説明は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。
この項では、ヘルプとトラブルシューティングに関するトピックについて説明します。
ロギングを有効にするには、Oracle Enterprise Manager Fusion Middleware Controlを使用します(「SOAインフラストラクチャ」 > 「ログ」 > 「ログ構成」)。詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』を参照してください。
別の方法として、次の場所にあるlogging.xml
ファイルを編集します。
DOMAIN_HOME/config/fmwconfig/server/managed_server
web.xml
では、oracle.adf.share.security.authentication.AuthenticationServlet
のsuccess_url
パラメータに../access/oblix/lang/en-us/logout.html
などのSSOログアウトのURLを含めて、このURLがアクセス可能であること、404エラーが発生しないことを確認する必要があります。
Oracle Single Sign-OnおよびOracle Access Managerの詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。