MQ Adapter

     前  次    新規ウィンドウで目次を開く    PDFとして表示 - 新規ウィンドウ  Adobe Readerを取得 - 新規ウィンドウ
コンテンツはここから始まります

Oracle Tuxedo MQ Adapterの構成

この章の内容は以下のとおりです。

 


Oracle Tuxedoサーバーの構成

Oracle Tuxedo MQ Adapterは、Oracle Tuxedo to WebSphere MQサーバー(TM_MQO)、WebSphere MQ to Oracle Tuxedoサーバー(TM_MQI)、およびtpenqueue()およびtpdequeue()リクエストを処理するためのサーバー(TMQUEUE_MQM)の、3台のOracle Tuxedoサーバーから構成されています。使用するサーバーの各々をOracle Tuxedo UBBCONFIGファイルで識別する必要があります。さらに、MQ Adapterでは、各サーバーに特定のパラメータを設定する必要があります。これらのパラメータは、サーバー構成ファイルで定義します。このドキュメントでは、各サーバーのサンプル構成ファイルを示します。これらのサンプル構成ファイルをベースにして、使用する環境に必要な固有の情報を挿入することができます。

次のいくつかの項では、Oracle Tuxedo UBBCONFIGファイル内で各サーバーを識別する方法、およびこれらの各サーバーに対してMQ Adapterが必要とする構成ファイルを設定する方法を説明します。

Oracle Tuxedo to WebSphere MQサーバー(TM_MQO)の構成

TM_MQOは、Oracle TuxedoクライアントからWebSphere MQサービスへのすべてのリクエストをルーティングします。サービス・リクエストおよびレスポンスをエンキューおよびデキューすることによって、Message Queue Interface (MQI)を介してWebSphere MQと対話します。MQIは、すべてのWebSphere MQアプリケーションが実装する、共通アプリケーション・プログラミング・インタフェースです。

リスト3-1に示すように、TM_MQOサーバーは、Oracle Tuxedo UBBCONFIGファイルのSERVERSセクションで定義します。

リスト3-1 UBBCONFIGでのTM_MQOサーバー定義の構文
*SERVERS
TM_MQO SRVGRP="identifier" SRVID="number"
CLOPT="-- -C configuration_file_name"

SRVGRPSRVIDおよびCLOPTパラメータの構文と定義に関する情報は、『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』を参照してください。

CLOPT= "-- -C Tuxedo to WebSphere MQ configfile"により、サーバーの構成ファイルが指定されます。

構成ファイルは、サービスおよび関連パラメータのリストを起動時にサーバーに提供します。定義する必要があるパラメータの説明は、「サーバー構成ファイルの作成」を参照してください。

Oracle Tuxedo to WebSphere MQサーバー用FML32フィールドの定義

Oracle Tuxedoは、$TUXDIR/udataobj/Usysfl32フィールド定義表および$TUXDIR/include/Usysfl32.hヘッダー・ファイルで、TM_MQOのためのFML32フィールドを定義しています。Oracle Tuxedo MQ Adapterは、FML32関数を使用して、エラーに関連したフィールド型バッファを操作します。FML32プログラミングの詳細情報は、『FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』を参照してください。

TM_MQOのフィールド定義表の構文は、次のリスト3-2に示すとおりです。

リスト3-2 TM_MQOのフィールド定義表の構文
# name                  number    type    flags   comments
TPMQ_ADAPTER_ERR `n' string - -
TPMQ_ADAPTER_ERR_CODE `n' string - -
TPMQ_APP_ERR `n' string - -

これらのFML32フィールドは、次のように使用します。

これらのフィールドは、$TUXDIR/udataobj/Usysfl32および$TUXDIR/include/Usysfl32.hで定義されています(Oracle Tuxedo 9.1以前を実行している相互運用クライアントでこれらのフィールドを使用する場合、クライアントはOracle Tuxedoの後のバージョンと同じフィールド番号を使用してこれらのフィールドを定義する必要があります)。

環境変数FLDTBLDIR32およびFIELDTBLS32は、システムがFML32フィールド定義を$TUXDIR/udataobj/Usysfl32で参照できるように設定してください。

WebSphere MQ to Oracle Tuxedoサーバー(TM_MQI)の構成

TM_MQIは、WebSphere MQアプリケーションからリクエストされたメッセージをOracle Tuxedoサービスに転送します。アプリケーションはリクエストをTM_MQIによってモニターされる指定キューに登録します。リクエストされたサービスは、メッセージ記述子で指定されます。TM_MQOと同様に、TM_MQIは、キューに格納されるデータについてデータ変換および意味論的変換を実行してからサービスに提供する必要があります。応答についても同様にする必要があります。

リスト3-3に示すように、TM_MQIサーバーは、Oracle Tuxedo UBBCONFIGファイルのSERVERSセクションで定義します。

リスト3-3 UBBCONFIGでのTM_MQI定義の構文

*SERVERS
TM_MQI SRVGRP="
identifier" SRVID="number" REPLYQ=N
CLOPT="-- -C configuration_file_name"

SRVGRP、SRVID、REPLYQおよびCLOPTパラメータの構文および定義の詳細は、Oracle Tuxedoのリファレンス・マニュアルを参照してください。

CLOPT= "-- -C WebSphere MQ to Tuxedo configfile"により、サーバーの構成ファイルが指定されます。

構成ファイルは、キュー、サービスおよび関連パラメータのリストを起動時にサーバーに提供します。定義する必要があるパラメータの説明は、「サーバー構成ファイルの作成」を参照してください。

TMQUEUE_MQMサーバーの構成

TMQUEUE_MQMは、WebSphere MQキューとの間でデータを送受信する必要があるOracle Tuxedoアプリケーションからのtpenqueue()およびtpdequeue()リクエストを処理します。

リスト3-4に示すように、TMQUEUE_MQMサーバーは、Oracle Tuxedo UBBCONFIGファイルのSERVERSセクションで定義します。

リスト3-4 UBBCONFIGでのTMQUEUE_MQM定義の構文
*SERVERS
TMQUEUE_MQM SRVGRP="identifier" SRVID="number" REPLYQ=N CLOPT="--  -C configuration_file_name"

SRVGRP、SRVID、REPLYQおよびCLOPTパラメータの構文および定義の詳細は、Oracle Tuxedoのリファレンス・マニュアルを参照してください。

CLOPT= "-- -C enqueue/dequeue configfile"により、サーバーの構成ファイルが指定されます。

構成ファイルは、キューおよび関連パラメータのリストを起動時にサーバーに提供します。定義する必要があるパラメータの説明は、「サーバー構成ファイルの作成」を参照してください。

 


サーバー構成ファイルの作成

3つのMQ Adapterサーバーそれぞれについて、構成ファイルを作成する必要があります。ドキュメントに、構成ファイルを作成するベースとして使用できるサンプル・ファイルが示されています。サンプル・ファイルのパラメータ設定を、環境で必要な設定に置き換えることができます。

Oracle Tuxedo to WebSphere MQサーバー構成ファイルの作成

TM_MQO.CFGファイルは、Oracle Tuxedo to WebSphere MQサーバー(TM_MQO)の操作を制御します。TM_MQO構成ファイルにあるセクションと、各セクションで定義できるパラメータを次に示します。説明の後にサンプル構成ファイルを示します。

注意: TM_MQO.CFGは、一般的なファイル名です。このファイルには、任意の名前を付けることができますが、ファイル名は、Oracle Tuxedo UBBCONFIGファイルで指定した、-C configuration_file_nameパラメータと一致する必要があります。(UBBCONFIGファイルでのTM_MQOサーバーの構成に関する説明は、「Oracle Tuxedo to WebSphere MQサーバー(TM_MQO)の構成」を参照してください。)

TM_MQO構成ファイルは、次の必須セクションに分かれています:

TM_MQO構成ファイルには、次に示すオプションのセクションが1つあります。

これらのセクションと各セクションのパラメータは、必須のセクションとパラメータが定義されている限り、構成ファイル内に自由な順序で指定できます。

TM_MQO QUEUE_MANAGERセクションの定義(必須)

TM_MQO構成ファイルのQUEUE_MANAGERセクションの構文は、次のリスト3-5に示すとおりです。

リスト3-5 QUEUE_MANAGERセクションの構文
*QUEUE_MANAGER
NAME=string
LQMID=string
注意: 構成ファイルにはQUEUE_MANAGERセクションを1つしか指定できません。
必須パラメータ

M_MQO構成ファイルのQUEUE_MANAGERセクションには、次のパラメータが含まれている必要があります。

NAME= string

WebSphere MQキュー・マネージャの名前を指定します。最大48文字(すべて大文字)を使用できます。キュー・マネージャの名前に関する特定の形式については、WebSphere MQのドキュメントを参照してください。
オプション・パラメータ

次のパラメータはオプションです。

LQMID= string

論理キュー・マネージャIDを指定します。最大8文字の英数字(大文字と小文字)を使用できます。このパラメータは、指定された場合、特定のユーザーログ・メッセージに含まれます。

TM_MQO SERVICEセクションの定義(必須)

TM_MQO構成ファイルのSERVICEセクションの構文は、次のリスト3-6に示すとおりです。

リスト3-6 SERVICEセクションの構文
*SERVICE
NAME=
string
MQNAME=string
FORMAT=string
TRAN={Y/N}
MAXMSGLEN=integer
REPLYTOQ=string
TIMEOUT=integer
EXPIRE=integer
PRIORITY=integer
INFIELD=string
OUTFIELD=string
OUTFIELDVNAME=string
必須パラメータ

M_MQO構成ファイルのSERVICEセクションには、次のパラメータが含まれている必要があります。

NAME = string

Oracle Tuxedoサービス名を指定します。このパラメータの最大長はOracle Tuxedoサービス名の最大長(現在は127文字で、大文字と小文字を使用できる)と同じです。特定のTM_MQO構成ファイルのすべての*SERVICEセクションを通じて、NAME文字列が一意でなければならない点に注意してください。

MQNAME = string

WebSphere MQキューの名前を指定します。最大48文字(すべて大文字)です。キューの名前に関する特定の形式については、WebSphere MQのドキュメントを参照してください。

MAXMSGLEN = integer

このサービスが受信するバッファで予期される最大メッセージ長を指定します。SERVERセクションでDEFMAXMSGLENが指定されない限り、これは必須パラメータです。(詳細情報は、SERVERセクション(オプション)の定義に関する項を参照してください)。

TIMEOUT = integer

指定されたMQサービスの処理を行える時間を秒単位で指定します。(これは、MQサービスがMQPUT1により呼び出された後に、MQGETが応答キューでメッセージを待機する最大時間です。)この値は0以上でなければなりません。この値が0の場合、サービスはタイムアウトになりません。SERVERセクションでDEFTIMEOUTが指定されている場合を除いて、このパラメータは必須です。(詳細情報は、SERVERセクション(オプション)の定義に関する項を参照してください)。
省略可能パラメータ

次のパラメータはオプションです。

EXPIRE = integer

MQPUT1により送信されたMQサービス・リクエスト・メッセージの有効期間を10分の1秒単位で指定します。この値は0以上でなければなりません。この値が0の場合、メッセージは期限切れになりません。デフォルト値は0です。

PRIORITY = integer

このサービスへのリクエストを送信する際のWebSphere MQ優先度を指定します。WebSphere MQでは通常、優先度として0 - 9の値を使用できます。このパラメータを指定しない場合は、MQでMQPRI_PRIORITY_AS_Q_DEFの値で指定されるデフォルトのキュー優先度が使用されます。

FORMAT = string

WebSphere MQメッセージ記述子のFormatにマップします。8文字まで指定できます。メッセージ記述子のFormatフィールドの特定の形式については、WebSphere MQのドキュメントを参照してください。

TRAN = {Y|N}

サービスがトランザクション対応かどうかを指定します。Yはトランザクション対応、Nはトランザクション非対応であることを表します。デフォルト値はNです。(トランザクション対応として定義されたサービスは、Oracle Tuxedoトランザクションの内部で呼び出す必要があります。非トランザクション対応として定義されたサービスは、Oracle Tuxedoトランザクションの外部で呼び出す必要があります。トランザクション対応サービスに送信されるメッセージは、MQPER_PERSISTENTの永続性を指定して送信されます。非トランザクション対応サービスに送信されるメッセージは、デフォルト・キューの永続性であるMQPER_PERSISTENCE_AS_Q_DEFを指定して送信されます。)

REPLYTOQ = string

WebSphere MQの「Reply To」キューの名前を指定します。最大48文字(すべて大文字)を使用できます。キューの名前に関する特定の形式については、WebSphere MQのドキュメントを参照してください。

INFIELD = string

FML32バッファ内の入力データのFML32フィールド名を指定します。このパラメータを指定した場合、このサービスに対するリクエストは入力としてFML32バッファを渡すことができ、INFIELD内のデータが実際のサービス・データとして渡されます。(INFIELDを指定したサービスへのリクエストは、FML32以外のデータ型を入力として渡すことができ、これは、INFIELDが指定されなかったものとして処理されますが、INFIELDを指定したサービスへのリクエストは、NULLデータを渡すことはできません。)
INFIELDがFLD_VIEW32フィールドである場合、TM_MQOは実際のVIEW32データのみをMQに渡し、FML32によって返されたFVIEWFLD構造体は渡しません。MQプログラムはどちらのVIEWの受信が予期されるか認識している必要があります。アプリケーションでは、TM_MQOのINFIELDまたはOUTFIELDとして、FLD_PTR、FLD_FML32、FLD_MBSTRING、FLD_FMLのフィールド型を使用しないでください。これらのフィールド型を使用すると、MQアプリケーションとの間で有意味なデータが渡されません。 INFIELDを指定しない場合、TM_MQOはFML32以外の型のバッファのみを入力として受け入れ、そのデータをWebSphere MQに直接渡します。

OUTFIELD = string

FML32レスポンス・バッファの作成時に使用される、出力データのFML32フィールド名を指定します。このパラメータを指定する場合は、INFIELDパラメータも指定する必要があります。このパラメータを省略すると、レスポンス・データのフィールド名は、INFIELDパラメータで指定された名前と同じになります。
OUTFIELDがFLD_VIEW32フィールドである場合、MQによって返されるデータは、FVIEWFLD構造体ではなくVIEW32データでなければなりません。VIEW32データをOracle Tuxedoアプリケーションに返送するには、TM_MQOはFVIEWFLD構造体を内部的に埋めて、FML32応答バッファにVIEW32データを追加する必要があるため、TM_MQOは返されるVIEWの名前を知っておく必要があります。TM_MQOサーバーはこの情報を次のような方法で取得します。
アプリケーションでは、TM_MQOのINFIELDまたはOUTFIELDとして、FLD_PTR、FLD_FML32、FLD_MBSTRING、FLD_FMLのフィールド型を使用しないでください。これらのフィールド型を使用すると、MQアプリケーションとの間で有意味なデータが渡されません。

OUTFIELDVNAME = view32name

FML32 OUTFIELD (OUTFIELDが構成されていない場合はFML32 INFIELD)への出力に使用されるVIEW32サブタイプの名前を指定します。OUTFIELDVNAMEは、OUTFIELDまたはINFIELDも指定されている場合にのみ使用できます。

TM_MQOのSERVERセクションの定義(オプション)

TM_MQO構成ファイルのSERVERセクションの構文は次のリスト3-7に示すとおりです。

リスト3-7 SERVERセクションの構文
*SERVER
DEFTIMEOUT=integer
DEFMAXMSGLEN=integer
MINMSGLEVEL=integer
MAXMSGLEVEL=integer
必須パラメータ

*SERVERセクションには必須パラメータはありません。

省略可能パラメータ

MINMSGLEVEL = integer

ユーザーログ・メッセージで望ましい最小のデバッグ・レベルを指定します。

MAXMSGLEVEL = integer

ユーザーログ・メッセージに望ましい最大のデバッグ・レベルを指定します。
注意:
カスタマ用のレベル範囲は次のとおりです。

DEFMAXMSGLEN = integer

Oracle Tuxedo to WebSphere MQサービスが受信するバッファで予期される、デフォルトの最大メッセージ長を指定します。DEFMAXMSGLENパラメータは、ServiceセクションのMAXMSGLENパラメータでオーバーライドされます。

DEFTIMEOUT = integer

WebSphere MQサービスの処理を行えるデフォルトの時間を秒単位で指定します。この値は0以上でなければなりません。この値が0の場合、サービスはタイムアウトになりません。DEFTIMEOUTは、ServiceセクションのTIMEOUTパラメータでオーバーライドされます。

MAXRETRIES = 整数

接続の最大再試行回数を指定します。最小値(デフォルト)は0で、最大値は2147483647です。MAXRETRIESを0に設定すると、自動接続の再試行処理はオフになります。

TM_MQO.CFGの例

リスト3-8は、TM_MQOサーバーのサンプル構成ファイルです。

リスト3-8 TM_MQOサーバーのサンプル構成ファイル
*SERVER
DEFTIMEOUT=60
DEFMAXMSGLEN=4096
MINMSGLEVEL=10
MAXMSGLEVEL=30

*QUEUE_MANAGER
LQMID=QM1
NAME=BEA.TEST.MANAGER

*SERVICE
NAME=MQTest1
TIMEOUT=20
MQNAME=TEST.SAMPLE.ECHO
REPLYTOQ=TEST.REPLY.QUEUE

*SERVICE
NAME=MQTest2
TIMEOUT=15
REPLYTOQ=TEST.REPLY.QUEUE
MQNAME=TEST.SAMPLE.TOUPPER

*SERVICE
NAME=MQTest3
MQNAME=TEST.NOREPLY.QUEUE
TRAN=Y
MAXMSGLEN=1024

WebSphere MQ to Oracle Tuxedoサーバー構成ファイルの作成

TM_MQI.CFGファイルは、WebSphere MQ to Oracle Tuxedoサーバー(TM_MQI)の操作を制御します。TM_MQI構成ファイルにあるセクションと、各セクションで定義できるパラメータを次に示します。説明の後にサンプル構成ファイルを示します。

注意: TM_MQI.CFGは、一般的なファイル名です。このファイルには、任意の名前を付けることができますが、ファイル名は、Oracle Tuxedo UBBCONFIGファイルで指定した、-C configuration_file_nameパラメータと一致する必要があります。(UBBCONFIGファイルでのTM_MQIサーバーの構成に関する説明は、「WebSphere MQ to Oracle Tuxedoサーバー(TM_MQI)の構成」を参照してください。)

TM_MQI構成ファイルは、次の必須セクションに分かれています:

TM_MQI構成ファイルには、次に示すオプションのセクションが1つあります。

これらのセクションと各セクションのパラメータは、必須のセクションとパラメータが定義されている限り、構成ファイル内に自由な順序で指定できます。

TM_MQI QUEUE_MANAGERセクションの定義(必須)

TM_MQI構成ファイルのQUEUE_MANAGERセクションの構文は、次のリスト3-9に示すとおりです。

リスト3-9 QUEUE_MANAGERセクションの構文
*QUEUE_MANAGER
NAME=string
LQMID=string
注意: 構成ファイルにはQUEUE_MANAGERセクションを1つしか指定できません。
必須パラメータ

M_MQO構成ファイルのQUEUE_MANAGERセクションには、次のパラメータが含まれている必要があります。

NAME = string

サーバーが処理するキューに割り当てられているWebSphere MQキュー・マネージャの名前を指定します。最大48文字(すべて大文字)を使用できます。キュー・マネージャの名前に関する特定の形式については、WebSphere MQのドキュメントを参照してください。
オプション・パラメータ

QUEUE_MANAGERセクションの以下のパラメータはオプションです。

LQMID = string

論理キュー・マネージャIDを指定します。最大8文字の英数字(大文字と小文字)を使用できます。このパラメータは、指定された場合、特定のユーザーログ・メッセージに含まれます。

TM_MQIのQUEUEセクションの定義(必須)

TM_MQI構成ファイルのQUEUEセクションの構文は、次のリスト3-10に示すとおりです。

リスト3-10 QUEUEセクションの構文
*QUEUE
MQNAME=string
MAXMSGLEN=integer
SERVICE=string
必須パラメータ

TM_MQI構成ファイルのQUEUEセクションには、以下のパラメータを含める必要があります。

MQNAME = string

サーバーによって処理されるWebSphere MQキューの名前を指定します。最大48文字(すべて大文字)を使用できます。キュー名の特定の形式については、WebSphere MQのドキュメントを参照してください。MQNAMEの文字列は、特定のTM_MQI構成ファイル内のすべての *QUEUEセクションにわたって一意でなければなりません。
省略可能パラメータ

次のパラメータはオプションです。

MAXMSGLEN = integer

このサーバーが受信するMQキュー・バッファで想定される最大メッセージ長を指定します。WebSphere MQキューから読み出されたメッセージがこの長さより長い場合は、デッド・レター・キューに送信されます。このパラメータを設定しない場合は、SERVERセクションのDEFMAXMSGLENパラメータが使用されます。SERVERセクションのDEFMAXMSGLENパラメータも設定されていない場合は、WebSphere MQキューで定義されているMaxMsgLength値が使用されます。

SERVICE = string

このキューで受信したリクエストを処理するOracle Tuxedoサービスの名前を指定します。指定しない場合、WebSphere MQから受信したMQMD構造体のFormatフィールドの値がOracle Tuxedoサービス名として使用されます。いずれの場合でも、Oracle Tuxedoサービスが呼び出されるようにするには、TM_MQIのSERVICEセクションでサービス名を定義する必要があります。

QUEUEセクションには他のパラメータはありません。

TM_MQIのSERVICEセクションの定義(必須)

TM_MQI構成ファイルのSERVICEセクションの構文は次のリスト3-11に示すとおりです。

リスト3-11 SERVICEセクションの構文
*SERVICE
NAME=string
FORMAT=string
TRAN={Y|N}
必須パラメータ

TM_MQI構成ファイルのSERVICEセクションには、以下のパラメータを含める必要があります。

NAME = string

Oracle Tuxedoサービス名を指定します。このパラメータの最大長はOracle Tuxedoサービス名の最大長(現在は127文字で、大文字と小文字を使用できる)と同じです。

FORMAT = string

WebSphere MQメッセージ記述子のFormatフィールドを、呼び出されるサービスにマップします。8文字まで指定できます。メッセージ記述子のFormatフィールドの特定の形式については、WebSphere MQのドキュメントを参照してください。FORMATの文字列は、特定のTM_MQI構成ファイル内のすべての*SERVICEセクションにわたって一意でなければなりません。複数のOracle Tuxedoサービスで同じFORMATを使用すると、MQ Adapterがその特定のFORMATをどのサービスにマップするのかが定義されなくなります。
オプション・パラメータ

次のパラメータはオプションです。

TRAN = {Y|N}

サービスがトランザクション対応かどうかを指定します。
Yはトランザクション対応、Nはトランザクション非対応であることを表します。デフォルト値はNです。
(TM_MQIは、WebSphere MQキューから各メッセージを読み込む前に、Oracle Tuxedoトランザクションを開始します。TRAN=Yの場合、Oracle Tuxedoサービスへの呼出しはこのトランザクションの内部で行われます。TRAN=Nの場合、Oracle Tuxedoサービスへの呼出しはTPNOTRANフラグで行われます。)

TM_MQIのSERVERセクションの定義(オプション)

TM_MQI構成ファイルの*SERVERセクションの構文は、次のリスト3-12に示すとおりです。

リスト3-12 SERVERセクションの構文
*SERVER
MINMSGLEVEL=integer
MAXMSGLEVEL=integer
DEFMAXMSGLEN=integer
REPLYONSVCERR={Y|N}
TPESVCFAILDATA={Y|N}
POLINTERVAL=integer
RETRYINTERVAL=integer
MAXRETRIES=integer
注意: 構成ファイルには*SERVERを1つしか指定できません。
必須パラメータ

*SERVERセクションには必須パラメータはありません。

省略可能パラメータ

MINMSGLEVEL = integer

ユーザーログ・メッセージで望ましい最小のデバッグ・レベルを指定します。

MAXMSGLEVEL = integer

ユーザーログ・メッセージに望ましい最大のデバッグ・レベルを指定します。
注意:
カスタマ用のレベル範囲は次のとおりです。

DEFMAXMSGLEN = integer

*QUEUEセクションのMAXMSGLENパラメータのデフォルト値を指定します。

REPLYONSVCERR = {Y|N}

TPEVSCFAIL以外のフィードバック解釈エラーが追加されるかどうかを指定します。デフォルト値はNです。 tpcallTPESVCFAIL以外の値により失敗した場合、TM_MQIは、REPLYONSVCERRが設定されている場合にのみ応答キューに応答を返します。これにより、Md.Feedbackフィールドをチェックしていない既存のアプリケーションで応答コンテンツの混同が生じる事態を避けられます。この場合、TM_MQIは、MQMD FeedbackMQFB_APPL_FIRST+TPERRNOに設定します。
REPLYONSVCERRが設定されている場合、MQクライアントはMd.Feedbackフィールドを調べて、応答メッセージが存在することを確認する必要があります。

TPESVCFAILDATA = {Y|N}

ゼロでない長さのデータが関連付けられている、Oracle TuxedoからのTPESVCFAILエラーの処理方法を指定します。デフォルトはNです。
TPESVCFAILDATA=Nの場合、tpcall()でエラーが発生すると、TM_MQItpcallに送信された元のデータをMQデッド・レター・キュー(存在する場合)に送信します。 TPESVCFAILDATA=Yの場合、応答の長さがゼロではなく、TPESVCFAILによりtpcall()が失敗すると、TM_MQIは呼び出し側の応答キューにデータを返し、元のメッセージはMQデッド・レター・キューに送信されません。この場合、TM_MQIMQMD FeedbackMQFB_APPL_FIRST+TPESVCFAILに設定します。Oracle Tuxedoサービスの呼出しが、長さがゼロのデータや、TPESVCFAIL以外のtperrno値により失敗した場合、元のメッセージはデッド・レター・キューに送信されます。

POLINTERVAL = integer

TM_MQIサーバーにあるキュー内のMQ Seriesのポーリング間隔をミリ秒単位で指定します。
指定しないと、デフォルトで500が設定されます。推奨範囲は50から500です。これをより低い値(0から49)に設定するとサーバー負荷が高くなる場合があり、より高い値(501以上)に設定すると、MQ Seriesの受信リクエスト・キューの確認頻度が減り、MQ Seriesリクエストの処理が遅延されるため、アプリケーション・パフォーマンスが低下する場合があります。

RETRYINTERVAL = 整数

接続再試行の間隔を秒単位で指定します。最小値は1で、最大値は2147483647です。
注意: このパラメータはマルチ・スレッドTM_MQIのみに利用可能です。

MAXRETRIES = 整数

接続の最大再試行回数を指定します。最小値(デフォルト)は0で、最大値は2147483647です。MAXRETRIESを0に設定すると、自動接続の再試行処理はオフになります。
注意: このパラメータはマルチ・スレッドTM_MQIのみに利用可能です。

TM_MQI.CFGの例

リスト3-13にTM_MQIサーバーの構成ファイルの例を示します。

リスト3-13 TM_MQIサーバーの構成ファイルの例
*SERVER
MINMSGLEVEL=1
MAXMSGLEVEL=100

*QUEUE_MANAGER
LQMID=QM1
NAME=BEA.TEST.MANAGER

*SERVICE
NAME=SvcToupper
FORMAT=UPPER

*SERVICE
NAME=SvcEcho
FORMAT=ECHO
TRAN=Y

*QUEUE
MQNAME=TEST.SAMPLE.QUEUE1
MAXMSGLEN=200
*QUEUE
MQNAME=TEST.SAMPLE.QUEUE2

エンキュー/デキュー・サーバーの構成ファイルの作成

TMQUEUE_MQM.CFGファイルは、tpenqueueおよびtpdequeueリクエストを扱うサーバー(TMQUEUE_MQM)の処理を制御します。TMQUEUE_MQM構成ファイルのセクションと各セクションで定義できるパラメータを以下に示します。説明の後にサンプル構成ファイルを示します。

注意: TMQUEUE_MQM.CFGは一般的なファイル名です。このファイルには、任意の名前を付けることができますが、ファイル名は、Oracle Tuxedo UBBCONFIGファイルで指定した、-C configuration_file_nameパラメータと一致する必要があります。(UBBCONFIGファイルでTMQUEUE_MQMサーバーを構成する手順については、「TMQUEUE_MQMサーバーの構成」を参照してください。)

TMQUEUE_MQM構成ファイルは次の必須のセクションに分かれています。

TMQUEUE_MQM構成ファイルにはオプションのセクションが1つあります。

これらのセクションと各セクションのパラメータは、必須のセクションとパラメータが定義されている限り、構成ファイル内に自由な順序で指定できます。

TMQUEUE_MQMのQUEUE_MANAGERセクションの定義(必須)

TMQUEUE_MQM構成ファイルのQUEUE_MANAGERセクションの構文は次のリスト3-14に示すとおりです。

リスト3-14 QUEUE_MANAGERセクションの構文
*QUEUE_MANAGER
NAME=string
LQMID=string
注意: 構成ファイルにはQUEUE_MANAGERセクションを1つしか指定できません。
必須パラメータ

TMQUEUE_MQM構成ファイルのQUEUE_MANAGERセクションには、以下のパラメータを含める必要があります。

NAME = string

サーバーが処理するキューに割り当てられているWebSphere MQキュー・マネージャの名前を指定します。最大48文字(すべて大文字)を使用できます。キュー・マネージャの名前に関する特定の形式については、WebSphere MQのドキュメントを参照してください。
オプション・パラメータ

LQMID = string

論理キュー・マネージャIDを指定します。最大8文字の英数字(大文字と小文字)を使用できます。このパラメータは、指定された場合、特定のユーザーログ・メッセージに含まれます。

TMQUEUE_MQMのQUEUEセクションの定義(必須)

リスト3-15にTMQUEUE_MQM構成ファイルのQUEUEセクションの構文を示します。

リスト3-15 QUEUEセクションの構文
*QUEUE
MQNAME=string
TUXNAME=string
MAXMSGLEN=integer
必須パラメータ

TMQUEUE_MQM構成ファイルのQUEUEセクションには、以下のパラメータを含める必要があります。

MQNAME = string

サーバーによって処理されるWebSphere MQキューの名前を指定します。最大48文字(すべて大文字)を使用できます。キュー名の特定の形式については、WebSphere MQのドキュメントを参照してください。

TUXNAME = string

ATMI enqueue/dequeueの呼び出しに使用されるキューの名前を指定します。このパラメータの最大長はOracle Tuxedoキュー名の最大長(現在は127文字で、大文字と小文字を使用できる)と同じです。TUXNAMEの文字列は、特定のTMQUEUE_MQM構成ファイル内のすべての*QUEUEセクションにわたって一意でなければなりません。

MAXMSGLEN = integer

このキューから受信するバッファで想定される最大メッセージ長を指定します。このパラメータはSERVERセクションのDEFMAXMSGLENパラメータをオーバーライドします。DEFMAXMSGLENを指定しない場合は、MAXMSGLENを指定する必要があります。

TMQUEUE_MQMのSERVERセクションの定義(オプション)

リスト3-16にTMQUEUE_MQM構成ファイルのSERVERセクションの構文を示します。

リスト3-16 SERVERセクションの構文
*SERVER
MINMSGLEVEL=integer
MAXMSGLEVEL=integer
DEFMAXMSGLEN=integer
注意: 構成ファイルにはSERVERセクションを1つしか指定できません。
必須パラメータ

SERVERセクションには必須パラメータはありません。

省略可能パラメータ

MINMSGLEVEL = integer

ユーザーログ・メッセージで望ましい最小のデバッグ・レベルを指定します。

MAXMSGLEVEL = integer

ユーザーログ・メッセージに望ましい最大のデバッグ・レベルを指定します。
注意:
カスタマ用のレベル範囲は次のとおりです。

DEFMAXMSGLEN = integer

WebSphere MQキューから受信するバッファで想定される、デフォルトの最大メッセージ長を指定します。DEFMAXMSGLENパラメータは、QUEUEセクションのMAXMSGLENパラメータでオーバーライドされます。

TMQUEUE_MQM.CFGの例

リスト3-17にTMQUEUE_MQMサーバーの構成ファイルの例を示します。

リスト3-17 TMQUEUE_MQMサーバーの構成ファイルの例
*SERVER
DEFMAXMSGLEN=4096

*QUEUE_MANAGER
LQMID=QM1
NAME=BEA.TEST.MANAGER

*QUEUE
TUXNAME=MQTest1
MQNAME=TEST.NOREPLY.QUEUE

*QUEUE
TUXNAME=MQEcho
MQNAME=TEST.SAMPLE.ECHO
MAXMSGLEN=2048

*QUEUE
TUXNAME=MQReply
MQNAME=TEST.REPLY.QUEUE

 


WebSphere MQキュー・マネージャの構成

MQ Adapter for Oracle Tuxedoを実行するためには、WebSphere MQキュー・マネージャを構成する必要があります。キュー・マネージャの構成に関する手順については、WebSphere MQのドキュメントを参照してください。


  先頭に戻る       前  次