5.23 XMLQueueService

サービス名:XMLQueueService

XMLQueueServiceサービスでは、MQSeriesメッセージ待ち行列とIBM i データ待ち行列からXMLメッセージを受信し、これらの待ち行列にXMLメッセージを送信できます。

以下のサービス・プロパティ・エントリーを使用すると、待ち行列からのデータの受信時と待ち行列へのデータの送信時に使用されるデータ・エンコーディングを制御できます。データをIBM i データ待ち行列に入れると、データにEBCDICスペースが埋め込まれます。dq.put.encoding値とdq.get.encoding値がEBCDICファミリーに属していることをお勧めします。例えば、Cp037、Cp273、Cp500は有効な値です。省略値では、クライアント・プログラムやメッセージのCCSIDを使用してエンコーディング値を決定します。

dq.get.encoding

dq.put.encoding

mq.get.encoding

mq.put.encoding

以下のサービス・プロパティ・エントリーを使用すると、データ・エンコーディングに合うようにXML宣言を修正できなくなります。これらのプロパティの省略値は*yesです。

dq.put.modify.declaration=*no

mq.put.modify.declaration=*no

以下のサービス・プロパティ・エントリーを使用すると、XML宣言修正プロセスで使用されるXML宣言IANAエンコーディングを明示的に指定できます。

これらのサービス・プロパティがない場合、IANAエンコーディングはエンコーディングで決まります。

dq.put.encoding.declaration= 有効なIANAエンコーディング。例 iso-8859-1

mq.put.encoding.declaration= 有効なIANAエンコーディング。例 iso-8859-1

IBM JavaのUnicodeからEBCDICバイトへのエンコーダーでは、EBCDIC LF (ライン・フィード0x25)文字ではなく、EBCDIC NL (改行0x15)文字を使用します。Unicode XMLの結果が選択したエンコーディングに変換され、このエンコーディングがEBCDICの場合、改行文字がライン・フィード文字に置き換えられます。これらのプロパティの省略値は*noです。

dq.put.ebcdic.nl2lf=*yes

mq.put.ebcdic.nl2lf=*yes

XMLQueueServiceはテキスト・メッセージを処理するように構成できます。キーワードMESSAGE(*TEXT)がSERVICE_LOADコマンドにある場合、サービスではテキスト・メッセージを想定するため、メッセージの値は<text>タグと</text>タグで囲まれます。

 

<?xml version="1.0" encoding="utf-8"?>

<text>The quick brown fox jumped over the lazy dogs</text>

 

XMLQueueServiceは以下のコマンドをサポートしています。

5.23.1 SERVICE_LOAD

5.23.2 SERVICE_GET

5.23.3 RECEIVE

5.23.4 SEND

5.23.5 ARCHIVE

5.23.6 SERVICE_UNLOAD

MQSeries組み込み関数の詳細については、「5.1.13 MQSeries組み込み関数 」を参照してください。