BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   ATMI アプリケーションでの BEA Tuxedo TOP END Domain Gateway の使用   |   先頭へ   |   前へ   |   次へ   |   目次

 


BEA TOP END クライアントから BEA Tuxedo サーバへのメッセージの送信

BEA TOP END クライアントは BEA Tuxedo サービスと TEDG を介して通信します。DMCONFIG ファイルの DM_LOCAL_SERVICES セクションで、TEDG サービスに対する SERVICE エントリに CONV=N が指定されている場合、BEA TOP END クライアントはそのサービスと要求/応答モードでのみ通信できます(CONV=N はデフォルト値であり、設定する必要はありません)。

BEA TOP END クライアントに対し、TEDG は リモート BEA TOP END ノード上の BEA TOP END サーバの機能を果たします。TEDG は BEA TOP END クライアント要求を受け取り、それを対応する BEA Tuxedo 要求にマッピングします。BEA Tuxedo システムは、BEA Tuxedo コンフィギュレーション内の任意の BEA Tuxedo サーバに要求をルーティングします。

BEA TOP END クライアントから BEA Tuxedo サーバに、要求/応答モードのメッセージは次のように送信されます。

TEDG と BEA TOP END クライアントの動作

クライアントの動作は任意の BEA TOP END クライアントで使用する関数と同じ関数でプログラミングされます。

使用する関数

目的

tp_client_send

非同期要求の作成

tp_client_signon

非同期要求の作成

tp_client_receive

応答の受信


 

これらの関数を通常の方法で使用し、TEDG を介して BEA Tuxedo サーバにサービス要求を行います。

BEA TOP END クライアントのプログラマは次の情報を把握していることが必要です。

TEDG によるクライアント要求のマッピング

クライアント要求にはトランザクションに関与するものと関与しないものがあります。また、応答を要求しないものもあります。次の表は、BEA TOP END クライアントのフラグがどのようにマッピングされるかを示しています。これらのフラグを処理することにより、通常 BEA TOP END システムで行われるタスクを TEDG で実行することができます。TEDG への要求では、input_format および attach_info パラメータを使用しないでください。これらのパラメータはサポートされていません。

BEA TOP END クライアントのフラグのマッピング

BEA TOP END クライアントのフラグ

動作

TP_DISSOLVE

TEDG が BEA Tuxedo サーバ応答を返した後で対話が無効になります。

TP_NON_TRANSACT

TEDG 側では、CSI ライブラリによって要求がクライアントのトランザクションから除外されるという事実が保持されます。

TP_NO_RESPONSE

TEDG により TPNOREPLY にマッピングされます。BEA TOP END システムと同じように、TEDG は BEA TOP END クライアントへの応答としてルーティング・ステータスを送信します。

TP_FML_BUF

TEDG はユーザ・データを FML32 バッファとして渡します。


 

BEA TOP END クライアントに返されるステータス値および拡張されたステータス値は、標準の値です。エラー値 のマッピングについては、後の節で説明します。

TEDG は BEA Tuxedo システムまたはサーバの応答を、tp_client_receive(3T) 呼び出しを介して BEA TOP END クライアントがアクセスする応答にマッピングします。BEA Tuxedo サーバは CARRAYX_OCTET、または FML32 バッファの応答を送信します。CARRAY または X_OCTET バッファは、TEDG によって raw メッセージにマッピングされます。FML32 バッファは BEA TOP END FML32 メッセージにマッピングされます。さらに管理者は、応答バッファの型を CARRAYX_OCTETFML32 のいずれかに制限することができます。BEA Tuxedo サービスが互換性のないバッファを返すと、TEDG は TP_RESET ステータスを返します。

TEDG と BEA Tuxedo サーバの動作

BEA Tuxedo サーバに対し、TEDG は BEA Tuxedo クライアントの機能を果たします。つまり、マッピングされた BEA TOP END クライアント要求を通常の方法で受信します。受信するバッファのタイプは CARRAYX_OCTET、または FML32 のいずれかであり、クライアントから送信されるメッセージに依存します。BEA Tuxedo サーバは要求を通常の方法で処理します。要求にはトランザクションに関与するものとしないものがあります。「応答なし」の要求もあります。

BEA Tuxedo サーバは tpreturn(3c) を使用してクライアント要求に応答します。TPSUCCESSTP_OK BEA TOP END ステータスにマッピングされます。TPFAILTPEXIT、およびほかのいくつかのエラーは TP_RESET の BEA TOP END ステータスにマッピングされます。応答メッセージは TPSUCCESS でのみサポートされます。

注記 アプリケーション定義の戻りコード rcode は TEDG ではサポートされていません。

BEA TOP END システム、TEDG コンフィギュレーション、および BEA TOP END クライアントでサポートされているバッファ・タイプに応じて、BEA Tuxedo サーバは CARRAYX_OCTET、または FML32 バッファの応答を送信します。応答バッファは BEA TOP END メッセージにマッピングされます。サーバは、TPFAIL エラーを送信するかまたは応答バッファにアプリケーション定義のフィールド値を設定して応答することにより、エラーを示します。BEA TOP END クライアントは、エラーに対処するようにプログラムされなければなりません。

BEA TOP END メッセージは 30K バイトに制限されているため、BEA Tuxedo サーバの応答はこのサイズを超えることはできません。FML32 メッセージに対しては、FML インデックスを除いたメッセージにこの制限が適用されます。

エラー値

TEDG、BEA Tuxedo システム、または BEA Tuxedo サーバに問題がある場合、通常の BEA TOP END エラー・ステータス・メッセージおよびその他のステータス・メッセージが BEA TOP END クライアントに返されます。1 つのエラー・ステータス値は、複数の原因のうちの 1 つにしかすぎない場合があることに注意してください。

TEDG が宣言するサービスは実際の BEA Tuxedo サービスの可用性に基づくわけではないので、実際にはそのサービスが利用できない BEA Tuxedo ノードにメッセージがルーティングされることもあります。その場合、ほかのルーティング決定では要求は正常に行われても、TP_SERVICE エラーが返されます。サービスを複数のノードで利用できる場合、BEA Tuxedo アプリケーション、BEA TOP END アプリケーション、および TEDG の設計ではこの種の障害が発生する可能性を考慮する必要があります。複数の再起動可能なサーバを定義したアプリケーションであれば、このようなエラーが発生する可能性は低くなります。

BEA TOP END クライアントに返されるエラー値

BEA TOP END エラー・ステータス

原因

TP_SERVICETP_EXT_MSR_FAILURE

TEDG SERVICE エントリのルックアップに失敗しました。ターゲットは見つかりませんでした。

TP_SERVICETP_EXT_NO_SUCH_SERV

TEDG SERVICE エントリのルックアップに失敗しました。プロダクトまたは関数は見つかりませんでした (RDOM がアクセスしないエントリは無視します)。

TP_SERVICETP_EXT_NO_SUCH_SERV

BEA Tuxedo システムから TPENOENT が返されました。

TP_RESETTP_EXT_SERVER_APPL

入力バッファ・タイプが、SERVICE エントリの INBUFTYPE フィールドで指定されるタイプと一致しません。

TP_RESETTP_EXT_SERVER_APPL

サーバ応答のバッファ・タイプが、SERVICE エントリの OUTBUFTYPE フィールドで指定されたタイプと一致していないか、TEDG でサポートされているタイプではありません。サポートされているタイプは FML32CARRAY、および X_OCTET です。

TP_RESETTP_EXT_SERVER_APPL

(FML バッファの FML インデックスを除いた) サーバ応答バッファが最大メッセージ・サイズの 30K バイトを超えています。

TP_RESETTP_EXT_SERVER_APPL

TPESVCERRTPESVCFAIL、およびほかのすべての tperrno 値。

TP_RESETTP_EXT_SERVER_APPL

公開鍵/秘密鍵による暗号化が原因のエラー。

BEA Tuxedo システムが暗号化を要求するように設定され、TEDG は BEA TOP END システムに送信する前にメッセージを解読できなかったため、クライアント入力が BEA Tuxedo サーバによって拒否されました。

TP_RESETTP_EXT_SERVER_APPL

デジタル署名が原因のエラー。

BEA Tuxedo システムがデジタル署名を要求するように設定され、TEDG は BEA TOP END システムに送信する前にメッセージからデジタル署名を削除できなかったため、クライアント入力が BEA Tuxedo サーバによって拒否されました。


 

関連項目

 

先頭へ戻る 前のトピックへ 次のトピックへ