CORBARequest ノードを使用して、Internet Inter-ORB Protocol (IIOP) を介して外部 CORBA アプリケーションを呼び出します。
CORBARequest を使用して、WebSphere® Message Broker を CORBA アプリケーションに接続できます。 CORBA は、オブジェクトをネットワーク全体に分散させて、それらのオブジェクトに対する操作をリモート側で呼び出せるようにするための標準です。 CORBA オブジェクトは、インターフェース定義言語 (IDL) ファイルで記述されます。 CORBA サーバーを呼び出す CORBARequest ノードが含まれているメッセージ・フローを作成できます。 メッセージ・フローは IDL ファイルを使用して、どの操作がどのインターフェースで呼び出されるかを構成します。 CORBARequest ノードを含むメッセージ・フローを使用することにより、既存の CORBA アプリケーションに新しい外部インターフェース (SOAP インターフェースなど) を付与できます。 IDL ファイルは、CORBA IDL という名前のフォルダーにあるメッセージ・セット・プロジェクト内に保管されて、メッセージ・フロー内で CORBARequest ノードを構成するために使用されます。
CORBARequest ノードを使用できる方法の 1 つは、同期スタイルのメッセージ・フローを使用することにより、SOAP ベースの Web サービス・アプリケーションを既存の CORBA IIOP アプリケーションに接続することです。 この接続は、以下のメッセージ・フローを作成することによって達成できます。
CORBARequest ノードはトランザクションではありません。 ノードが要求を出した後は、その要求をロールバックできません。 CORBA ノードは DataObject ドメインを使用します。
CORBARequest ノードはメッセージ・フローのノード・パレットのCORBA ドロワーに含まれ、WebSphere Message Broker Toolkit では、次のアイコンで表されます。
CORBARequest ノードのインスタンスをメッセージ・フローに入れると、それを構成することができます。メッセージ・フロー・ノードの構成を参照してください。 ノードのプロパティーが、「プロパティー」ビューに表示されます。
値を入力する必要のあるすべての必須プロパティー (デフォルト値が定義されていないプロパティー) には、アスタリスクが表示されます。
ターミナル | 説明 |
---|---|
In | ノードが処理するメッセージを受け入れる入力ターミナル。 データはメッセージ・ツリーから取得されて、CORBA サーバーに送られます。 |
Out | 戻されるパラメーターの伝搬元となる出力ターミナル。 |
Failure | 障害が検出された場合に、メッセージがルーティングされる出力ターミナル。 |
Error | 送信済みの要求に対する応答として受け取った CORBA 例外メッセージは、Error ターミナルに送信されます。 Error ターミナルが接続されていない場合、エラーを受け取ると、メッセージ・フローでそれ以降の処理は発生しません。 エラーは警告としてユーザー・トレースのログに記録されます。 |
以下の表は、ノード・プロパティーについて説明しています。 M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、アスタリスクのマークが付きます)。C の見出しの列は、プロパティーが構成可能 (メッセージ・フローを BAR ファイルに追加してデプロイするとき、値を変更できる) かどうかを示します。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
ノード名 | いいえ | いいえ | ノード名 | ノードの名前。 |
簡略説明 | いいえ | いいえ | なし | ノードの簡単な説明 |
詳細説明 | いいえ | いいえ | なし | メッセージ・フロー内のノードの目的を説明するテキスト |
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
ネーミング・サービス | はい | はい | 呼び出すオブジェクトが入ったネーミング・サービスの場所。 このプロパティーには、ネーミング・サービスのホスト名か、CORBA 構成可能サービスのどちらかを指定できます。
|
namingService | |
オブジェクト参照名 | はい | はい | ネーミング・サービス内のオブジェクトへの参照の名前。 この値は、呼び出し先の CORBA サーバーから取得できます。 オブジェクト参照名の指定方法の詳細は、CORBA ネーミング・サービスを参照してください。 構成可能サービスを使用してオブジェクト参照名を指定することもできます。 詳しくは、CORBARequest ノードがオブジェクト参照を取得する場所の定義を参照してください。 |
referenceName | |
IDL ファイル | はい | いいえ | CORBARequest ノードの構成に使用される、メッセージ・セット・プロジェクト内の IDL ファイル。
「参照」をクリックして、参照されるメッセージ・セット内の IDL ファイルを選択します。 インポートされた IDL ファイルをキャンバスまたは CORBARequest ノードにドラッグすると、「IDL ファイル」プロパティーはその IDL ファイルの名前に設定されます。 IDL ファイルの名前を指定すると、「インターフェース名」プロパティーには使用可能なインターフェースのリストが取り込まれます。 |
||
インターフェース名 | はい | いいえ | ノードが呼び出す IDL ファイルからのインターフェース。 有効なインターフェース名を入力するか、「インターフェースの選択」をクリックして、リストからインターフェースを選択します。 リストに多数のインターフェースが表示される場合は、結果をフィルター操作できます。 このプロパティーでリストされる値は、選択された IDL ファイル内の 1 つ以上の操作があるインターフェースです。 このリストが取り込まれるのは、IDL ファイルが指定される場合だけです。 インポートされた IDL ファイルをキャンバスまたは CORBARequest ノードにドラッグすると、「インターフェース名」プロパティーはその IDL ファイルに従って設定されます。 インターフェース名が IDL ファイル内のモジュールに含まれている場合、インターフェース名はモジュールの名前で修飾されます。 モジュールが別のモジュールにネストされている場合、インターフェース名は、ルート・モジュールから始まって、すべてのモジュール名で修飾されます。
例を示します。
ModuleNameA.ModuleNameB.InterfaceName インターフェース名を指定すると、「オペレーション名」プロパティーには使用可能な操作のリストが取り込まれます。 |
||
オペレーション名 | はい | いいえ | インターフェースから呼び出すための操作。 このプロパティーでリストされる値は、選択されたインターフェース内で使用可能なサポートされている操作です。 このリストが取り込まれるのは、インターフェース名が指定される場合だけです。 インポートされた IDL ファイルをキャンバスまたは CORBARequest ノードにドラッグすると、「オペレーション名」プロパティーはその IDL ファイルに従って設定されます。 以下の場所に値を指定することにより、ローカル環境でこのプロパティーをオーバーライドできます。
|
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
メッセージ・ドメイン | いいえ | いいえ | DataObject | 応答メッセージの構文解析に使用されるドメイン。 デフォルトで、CORBARequest ノードから伝搬されるメッセージは DataObject ドメインに存在します。 別のドメインを指定することはできません。 |
メッセージ・セット | いいえ | いいえ | 自動的に設定される | 着信メッセージが定義されているメッセージ・セットの名前。 ノードはメッセージ・セットを自動的に検出します。 |
メッセージ・タイプ | いいえ | いいえ | 応答メッセージの名前。 ノードはメッセージ・タイプを自動的に検出します。 このプロパティーを設定することはできません。 | |
メッセージ形式 | いいえ | いいえ | 応答メッセージの物理フォーマットの名前。このプロパティーを設定することはできません。 |
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
データのロケーション | はい | いいえ | $Body | CORBARequest ノードによって送信される要求を形成するためのデータの取得元になる、受信メッセージ・ツリー内での場所。 |
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
出力データのロケーション | いいえ | いいえ | $OutputRoot | CORBARequest ノードが出力を送信する宛先のメッセージ・ツリーのロケーション。 結果メッセージと着信メッセージの結合を参照してください。 |
ローカル環境のコピー | いいえ | いいえ | 選択されている | このプロパティーは、ローカル環境がどのように出力メッセージにコピーされるかを制御します。 このチェック・ボックスを選択すると、ローカル環境の新しいコピーがツリー内 (メッセージ・フロー内の各ノードごと) に作成されて、前のノードのローカル環境の内容がそこに取り込まれます。 したがって、ノードによってローカル環境が変更されても、フロー内のそれまでのノードは、それぞれ独自のコピーを保有しているので、そのような変更を認知しません。 このような動作は、FlowOrder ノードを使用する場合や、Compute ノード上で propagate コマンドを使用する場合に問題になる可能性があります。
チェック・ボックスをクリアした場合、各ノードは、それぞれ独自のローカル環境のコピーを生成しないで、前のノードから渡されたローカル環境を使用します。 したがって、ノードがローカル環境を変更した場合、その変更は上流のノードで認知されます。 |
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
イベント | いいえ | いいえ | なし | ノードに対して定義したイベントが、このタブに表示されます。 デフォルトでは、メッセージ・フローのどのノードに対してもモニター・イベントは定義されません。 ノードのモニター・イベントを作成、変更、または削除するには、「追加」、「編集」、および「削除」を使用します。詳しくは、モニター・プロパティーを使用したモニター・イベント・ソースの構成を参照してください。 「使用可能」チェック・ボックスを選択またはクリアすることによって、ここに表示されているイベントを使用可能および使用不可に設定できます。 |