JMS Quick Send Message

メッセージキューをオープンし、メッセージを送り、メッセージキューをクローズします。このプログラムは、簡単にメッセージを送りたい場合は有効ですが、大量のメッセージを送る場合は、効率的ではありません。

このプログラムは、「Open Queue」、「Message Setup」、「Send message」、「Close Queue」の各プログラムを順に呼び出します。

パラメータ

データ型

説明

Connection Factory

文字(250)/入力

JMS接続ファクトリの名前。キューに対してはキュー接続ファクトリを、トピックに対してはトピック接続ファクトリを指定します。

Queue Name

文字(250)

オープンするキューまたはトピックの名前

Username

文字(25)/オプション

接続時のユーザ名

Password

文字(25)/オプション

接続時のパスワード

Acknowledgement mode

数値(1)/入力

確認応答モードを指定します。

  • 1:AUTO_ACKNOWLEDGE …… セッションが receive の呼び出しからの復帰に成功するか、メッセージを処理するためにセッションが呼び出したメッセージリスナーが復帰に成功すると、セッションはクライアントのメッセージ受信を自動的に確認応答します。

  • 2:CLIENT_ACKNOWLEDGE …… クライアントは、メッセージの acknowledge メソッドを呼び出して処理済みのメッセージを確認応答します。処理済みのメッセージを確認応答すると、セッションが処理した全てのメッセージが確認応答されます。

  • 3:DUPS_OK_ACKNOWLEDGE …… セッションに対し、メッセージ配信の遅延確認応答を指示します。

JMS Message Type

文字(1)

JMSメッセージタイプを指定します。

  • T …… テキストメッセージ:XMLファイルのコンテンツのようなJava言語のStringオブジェクト

  • B …… バイトメッセージ:BLOB のようなバイナリデータストリーム

  • M …… マップメッセージ:名前が文字列、値がJavaプリミティブ型である複数の名前と値の組み合わせ。名前を指定することによって、順次にもランダムにも読み取ることができます。
    このタイプを指定した場合、バッファテーブルを使用してメッセージを送信します。詳細は、「バッファテーブル」を参照してください。

  • S …… ストリームメッセージ:Javaプリミティブ型のストリーム。データの順番は重要です。
    このタイプを指定した場合、バッファテーブルを使用してメッセージを送信します。詳細は、「バッファテーブル」を参照してください。

  • O …… オブジェクトメッセージ:シリアライズ可能なJavaオブジェクトの疑似参照を指定します。

  • H …… ヘッダメッセージ:メッセージ本文以外のメッセージヘッダとプロパティだけを含みます。

Message

BLOB( 入力 )

メッセージデータ を含んだ RTF 形式の BLOBデータ。メッセージタイプが 「マップメッセージ」 か「ストリームメッセージ」の場合、メモリテーブルの内容をBLOBデータ化してください。詳細は、「バッファテーブル」を参照してください。

JMS.TimeToLive

数値(9)/入力

メッセージの寿命をミリ秒で指定します。デフォルトは、0(無期限)です。

JMS.Priority

数値(1)/入力

デフォルトは 4。9が最も優先度が高くなります。

JMS.DeliveryMode

数値(1)/入力

恒久性を指定します。

  • 1 …… 恒久性なし:プロバイダがダウンした場合、メッセージは失われます。

  • 2 …… 恒久性あり:メッセージは失われません。デフォルトです。

JMS.Type

文字(200)/入力

メッセージのフィルタリングを行う場合に使用します。このパラメータに値を設定することで、受信側で指定されたメッセージのみを受け取るようすることができます。
例えば、 このパラメータを「Magic」と設定してメッセージを送信した場合、受信側の「OpenDestination」プログラムで[Message selector]を「JMSType = 'Magic'」と指定してキューをオープンし、メッセージの受信処理を行うと、このタイプのメッセージのみ受信対象となります。

Setup string

文字(2000)/入力

メッセージセレクタの Stringプロパティを指定します。Stringプロパティは名前と値の一対で一組の値となり、[Delimiter]パラメータで指定された区切り文字で分離されて送られます。
例えば、「Sender」というプロパティを設定し、その値として「Magic」を指定する場合は、「Sender!Magic」 となります(! が区切り文字になります)。この指定で送信されたメッセージを受信する場合のメッセージセレクタは、「Sender = 'Magic'」となります。
複数のプロパティを設定できます。

Delimiter

文字(5)/入力

[Setup string]パラメータの区切り文字を指定します。

Correlation Id

文字(200)/入力

(オプション)

相関IDを指定します。

Message Id

文字(200)/出力

メッセージIDが返ります。

 

戻り値

数値(15)

処理が成功した場合 0、失敗した場合は負の数(エラーコード)が返ります。