Skip to content

初めてのMQアプリを書く

JMSとは、Java Message Serviceの略です。JMSは、Javaプログラムからエンタープライズメッセージングシステムにアクセスする方法を定義した規格です。JMS APIは、IBM MQのようなメッセージング・サービス・プロバイダによって実装され、JMSクライアント・アプリケーションがプロバイダのメッセージング・サービスにアクセスできるようにします。

このチュートリアルでは、データを保持するメッセージをキューに入れ、消費側のアプリケーションがキューからデータを取得します。JMS API を使用して、メッセージング・プロバイダー(この場合は IBM MQ)に接続します。

前提条件

JMSとIBM MQを使ったポイント・ツー・ポイント・アプリの開発

あなたのアプリケーションは、これらのことができなければなりません。

  • キューマネージャーへの接続
  • キューを開く
  • メッセージを置く
  • メッセージの取得
  • キューを閉じる
  • キューマネジャからの切断

これらのMQオブジェクトは、接続先のMQサーバーに設定されていることを前提としています。

  • キュー・マネージャー QM1
  • キューDEV.QUEUE.1
  • チャンネル DEV.APP.SVRCONN
  • ポート 1414

独自のオブジェクトを使用している場合は、これらの名前を適宜調整する必要があります。または、_Ready, Set, Connect_シリーズのチュートリアルを見て、始めてみるのもいいでしょう。

すでにReady, Set, Connectのチュートリアルを終了している場合は、キュー・マネージャーが正しく設定されているはずです。 そうでない場合は、キュー・マネージャーに権限を設定して、アプリケーションからの接続を名前付きのチャネルを通して受け入れ、アプリケーションがキューとの間でメッセージを送受信する権限を持つ必要があります。

このビデオを見て、メッセージングがアプリケーションにどのように適合するか、およびこのチュートリアルで説明されている IBM MQ JMS アプリケーションをどのように構築するかを学んでください。

すでに JMS アプリケーションを持っていて、パフォーマンスやデバッグについて助けが必要な場合は、this articleをご覧ください。

環境を整える

この最初のステップでは、前提条件のインストールと設定を説明します。

  1. ホームディレクトリなどに、サンプルに必要なファイルを保存するディレクトリを作成します。

「2.MQClient」フォルダから「com.ibm.mq.allclient.jar」ファイルを「curl」を使ってダウンロードします。

3.3. MQClient フォルダから curl を使って JMS API ファイルをダウンロードします。

4.Java JDKバージョン8をまだお持ちでない方は、hereからダウンロードすることができます。お使いのプラットフォームに適したダウンロードを選択し、インストールしてください。

ポイントツーポイントJMSサンプルアプリケーションのダウンロード

サンプルをGitHubから入手してローカルマシンに保存し、主要なJMSの構造や、サンプルがキュー・マネージャーに接続できるようにホスト、ポート、チャンネル、キューの詳細を追加する箇所に目を通してみましょう。

  1. MQClientのディレクトリに、以下のようなディレクトリ構造を作成します。 com/ibm/mq/samples/jmsとします。

    Windowsの場合です。

    Linuxの場合

2.MQClient/com/ibm/mq/samples/jmsディレクトリから、curlを使ってGitHubからJmsPutGet.javaサンプルをダウンロードします。

3.3. JMSPutGet.java ファイルを編集します。ホスト、ポート、アプリのパスワード変数をキューマネージャーの構成に合わせて変更します。

これで、アプリケーションをコンパイルして実行できるようになります。

JMSアプリケーションのコンパイルと実行

ここでようやく、アプリケーションをキュー・マネージャに接続し、キューとの間でメッセージの送受信を行うことができます。

サンプルをコンパイルするには、MQClientのディレクトリに移動します。

javacを使ってアプリケーションをコンパイルします。

  1. MQClient "ディレクトリから、"javac "を使用してアプリケーションをコンパイルします。

    Windowsの場合

    Linuxの場合

    サンプルがコンパイルされたことを確認するために、これらのコマンドのいずれかを実行します。 これで、.javaファイルに付随する.classファイルが表示されるはずです。

    Windowsでは、dirコマンドを実行してください。

    Linuxの場合は、「ls」コマンドを実行します。 これで、.javaファイルに付随する.classファイルが表示されるはずです。 lsコマンドの出力

2.作成したアプリケーションを実行します。

Windowsの場合

Linuxの場合
このような出力が表示されるはずです。

JMSアプリ実行時の出力

まとめ

おめでとうございます。初めての JMS アプリケーションを編集・コンパイルし、IBM MQ キューにメッセージを送信し、キューからそのメッセージを取得しました。また、JMS および IBM MQ での開発に必要なすべてのものを備えた環境を設定しました。

JMSアプリケーションのオブジェクトを使ってMQサーバー側で何をヒットさせようとしているのか、JMSがどのようにそれを達成するのに役立つのかを基本的に理解しています。

JMSアプリケーションの信頼性とパフォーマンスを確認したい場合は、this articleを参照してください。