Open MQ4.1を使ってみよう!第5回 送受信のテスト
前回はMQ4.1のインストール、管理コンソールの利用について説明しました。
今回は本ブログで紹介するキューデータ管理ツール:QK2(きゅーけいつー)を使って、実際にMQ4.1ブローカへデータを送受信してみましょう。
まずはこちらからQK2をダウンロードしてください。ダウンロードしたQK2.zipを適当なフォルダに展開します。English Version here
ここではC:\QK2というフォルダに展開します。
#QK2はまい・はうすが開発/提供する管理・テスト支援ツールのサンプルです。AS-ISでの提供となりますのでご了承願います。
#QK2 is a sample tool for queue data administration/testing, not a Sun official tool. Please make sure that no warranty would be provided with this tool.

MQ4.1が起動しているかどうかを確認して(ログまたは、プロセスにて)から解凍した直下に出てくる、runlocalhost.batをダブルクリックします。するとMQが正常に稼動していれば下のようなツールの画面が起動します。#javaがpathに入っているか確認してください
・リモートマシン上で稼動するMQに接続したい場合は、run.batをnotepadなどで編集して、IPアドレスの部分をつなげたいMQの存在するマシン、ポート名に変更してください。例:java -Xms256m -Xmx512m -cp .\QK2.jar;.\imq.jar;.\jms.jar QK2 -b 129.158.34.188:7676

このツールの主な機能は以下になります。
・現在ブローカが管理している全てのキューをリストボックス中に表示
・特定のキューに入っているメッセージ一覧を表示
・メッセージ詳細表示&ダウンロード
・メッセージ削除
・新規メッセージ送信(送信回数指定可能)
・MQ3.7PE, MQ3.7EE, MQ4.1EE,OpenMQ4.1に対応
#MQ3.7PEに対してはキュー一覧の表示、メッセージの削除ができません(ライセンスの関係で)
このツールを利用すれば日常のキューデータ管理はもちろんのこと、メッセージを送付する機能もついているので、わざわざQueueSenderプログラムを作成せずとも任意のデータをキューに送付することができます。Sun Java CAPSなどでキューへのデータ送信がトリガになっているビジネスプロセスを起動したり、中間キューに現在どのようなデータが入っているかを監視するのにも役に立ちます。#送信はTopicも宛先に選択できます
それでは各機能についてみてみましょう。
1.現在ブローカ上に存在しているキューの表示
こちらはMQに接続した状態で、ツール右側のQueue名:リストボックス中に表示されています。
下矢印ボタンを押せば、現在保持されているQueueがリスト形式ででてきます。

2.特定キュー中のメッセージ一覧照会
Queue名:の右側のセレクションボックスから目的のキュー名を選択します。
選択した状態で(入力フィールドにはターゲットのキュー名が表示)、右側のBrowseボタンを押します。
すると中に入っているメッセージ一覧と、メッセージ数が表示されます。

ここではtestQueue1というキューにはメッセージが3つ格納されていることがわかります。
それぞれのメッセージID、送信日時、メッセージタイプ、メッセージボディサイズ、永続タイプ、プライオリティが表示されます。
3.メッセージ詳細表示&ダウンロード
それぞれのメッセージの中身を見ることができます。まずメッセージ一覧を表示します。
その後、各メッセージをクリックするか、メッセージを選択した状態で右下の「詳細...」ボタンを
押すと詳細表示画面がポップアップして、メッセージの中身が表示されます。

上の図の例ではTextMessageなのでメッセージデータがそのまま表示されています。
メッセージタイプがBytesMessageの場合、ボディのデータはバイナリなのでファイルとしてダウンロードすることもできます。以下の図はBytesMessageの詳細表示画面です。

下半分のところに、表示タイプという区分があってDownloadラジオボタンにチェックをつけると
ダウンロード画面に切り替わります。

任意のファイルパス(ファイル名も入力してください)を入力してダウンロードボタンを押すと
そのファイルパスにデータがダウンロードされてきます。

4.メッセージの削除
詳細表示と同様の要領で、メッセージを選択します。メッセージを選択した状態でツール右下の「選択したメッセージを削除」ボタンを押します。すると削除確認ボックスが開くのでOKを押してください。メッセージが削除されます。メッセージの削除時は複数のメッセージを同時に選択可能です。Ctrlキーを押したまま消したいメッセージだけを複数選択できます。またMenu→Select→全てのメッセージを選択をクリックすると現在画面に表示されている全メッセージが表示されます。

5.メッセージの作成
メニューからNew→新規メッセージ作成/送信を選択します。
新規メッセージ作成パネルが表示されます。

宛先名:任意のキューまたはトピック名(存在してもしなくてもかまいません)
宛先種別:QUEUEまたはTOPIC
JMSヘッダ:
ここにヘッダプロパティをKEY=VALUEの形式で書きます。
例:JMSDeliverMode=1
#メッセージを詳細表示して出てくるJMSヘッダを参考にす��と良いでしょう
#ただし、JMSクライアント側からは指定できない項目がいくつかありますので注意してください(ベンダ専用プロパティ)
Message Properties(String Only):
ここにユーザ定義プロパティをKEY=VALUEの形式で書きます。
任意の付加情報を格納できます。
例:FileName=Test.bin
Message body:
メッセージボディデータを入力します。
入力タイプがTextの場合は直接下のテキストエリアにデータを入力して��ださい(コピペもOK)
ファイルを入力データにしたい場合はFileを選択してファイルパスを入力します。

送付回数:
このメッセージを何回宛先に対して送付するかを指定します。
テストの場合などに複数回送付します。例:100メッセージを同時に送信する
データを入力し終わったら、右下の送信ボタンを押します。

すると、入力データの確認画面が表示されそのまま送信してよければ
送信確認ダイアログのOKボタンを押します。
送信結果が表示されます。

送信先がQUEUEの場合でまだメッセージがクライアントによって消費されていなければ
QK2のメッセージ照会で照会することができます。

インストールしたMQ4.1に対してデータの送受信はできましたか?
次回はMQ4.1の基本的な管理方法(良く使うコマンドなど)について説明します。
