JMS トランスポートを使用するための Address Book サンプルのセットアップ

このサンプルでは、WebSphere MQ が JMS プロバイダーとして使用されるので、JMSAdmin ツールを使用することによって、管理対象オブジェクトを作成しなければなりません。

サンプルを Linux 上で実行する場合、JMSAdmin クラスをクラスパスに追加する必要があります。 以下のファイルをクラスパスに追加します。

<mq_install_directory>/java/lib/com.ibm.mqjms.jar

Java の場所を PATH 変数に追加するには、クラスパスに以下のファイルを組み込みます。

<JAVA_HOME>/bin

JMSAdmin の使用による管理対象オブジェクトの作成

WebSphere MQ は mq_install_dir ディレクトリーにインストールされています。 JMSAdmin ツールおよび JMSAdmin 構成ファイルは、Linux では mq_install_dir/java/bin、Windows では mq_install_dir¥java¥bin にあります。

Address Book サンプル・フロー・プロジェクトでは、AddressBookSample.defs ファイルを JMSAdmin ツールと共に使用する必要があります。

JMSAdmin ツールを使用する前に、以下の指示に従って JMSAdmin.config ファイルを変更する必要があります。

JMSAdmin.config ファイルの変更

JMSAdmin.config ファイルを変更するには、次のようにします。

  1. テキスト・エディターで JMSAdmin.config ファイルを開きます。
  2. 必要ではないオプションをコメント化するには、番号記号 (#) を追加します。 必要なオプションのコメントを外すには、番号記号 (#) を除去します。
    	#  The following line specifies which JNDI service provider is in use.
    	#  It currently indicates a File System Context. If a different
    	#  service provider is used, this line must be commented out and the
    	#  appropriate one must be uncommented.
    	#
    	#  com.sun.jndi.fscontext.RefFSContextFactory is the FileSystem JNDI Context
    	#
    	#INITIAL_CONTEXT_FACTORY=com.sun.jndi.ldap.LdapCtxFactory
    	INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
    	#INITIAL_CONTEXT_FACTORY=com.ibm.ejs.ns.jndi.CNInitialContextFactory
    	#INITIAL_CONTEXT_FACTORY=com.ibm.websphere.naming.WsnInitialContextFactory
    	#
    	#  The following line specifies the URL of the initial
    	#  context for the service provider. It currently refers to a File System Context. 
    	#  Examples of an LDAP root context URL and the JNDI namespace 
    	#  for WebSphere are also shown, commented out.
    	#
    	#PROVIDER_URL=ldap://localhost/o=ibm,c=us
    	PROVIDER_URL=file:/C:/SOAPJNDIBindings
    	#PROVIDER_URL=iiop://localhost/	
    
  3. ファイルを保存した後、PROVIDER_URL 行に示されている JNDI-Directory ディレクトリーを作成します。

これで、オブジェクトを作成できます。

オブジェクトの作成

WebSphere MQ JMSAdmin ツールを実行して JNDI 管理対象オブジェクトを作成し、サンプルで使用する JMS 接続ファクトリーと宛先を構成します。

JMSAdmin ツールは入力として AddressBookSample.defs ファイルを使用します。 JMSAdmin を使用し、入力として AddressBookSample.defs ファイルを使用することによって、それらのオブジェクトを作成します。

コマンド行に、以下のコマンドを入力します。

mq_install_dir は、WebSphere MQ がインストールされている場所であり、workspace_path は、WebSphere Message Broker Toolkit ワークスペース・ディレクトリーの絶対パスです。

それらのオブジェクトと .bindings ファイルが作成されます。

JMS を使用するための SOAP ノードの構成

  1. メッセージ・フロー・エディターで AddressBook.AddressBookProviderFlow.msgflow メッセージ・フローを開きます。
  2. メッセージ・フローの SOAP Input ノードを右クリックし、「プロパティー」をクリックして、「プロパティー」ビューを表示します。
  3. 「プロパティー」ビューで「基本」タブを選択します。
  4. 「インポートされたバインディング」フィールドの値は AddressBookPortBinding に、「トランスポート」プロパティーの値は HTTP に設定されます。 ドロップダウン・リストを使用して、「インポートされたバインディング」の値を AddressBookJMSBinding に変更します。「トランスポート」プロパティーの値が JMS に変わります。
  5. メッセージ・フロー・エディターで AddressBook.AddressBookConsumerFlow.msgflow メッセージ・フローを開き、JMS トランスポートを使用するように SOAPRequest ノードを構成します。
  6. メッセージ・フローの findAddress SOAPRequest ノードを右クリックし、「プロパティー」をクリックして、「プロパティー」ビューを表示します。
  7. 「プロパティー」ビューで「基本」タブを選択します。
  8. 「インポートされたバインディング」フィールドの値は AddressBookPortBinding に設定されます。 ドロップダウン・リストを使用して、「インポートされたバインディング」の値を AddressBookJMSBinding に変更します。
  9. 「バインディング操作」プロパティーの値を FindAddress に変更します。
  10. 「トランスポート」プロパティー値が JMS であることを確認してください。
  11. メッセージ・フローの saveAddress SOAPRequest ノードを選択し、「プロパティー」ビューに移動します。
  12. 「プロパティー」ビューで「基本」タブを選択します。
  13. 「インポートされたバインディング」フィールドの値は AddressBookPortBinding に設定されます。 ドロップダウン・リストを使用して、「インポートされたバインディング」の値を AddressBookJMSBinding に変更します。
  14. 「バインディング操作」プロパティーの値を SaveAddress に変更します。
  15. 「トランスポート」プロパティー値が JMS であることを確認してください。

メッセージ・フロー内の JNDI パスの構成

SOAP ノードで .bindings ファイルの場所を構成する操作

  1. メッセージ・フロー・エディターで AddressBook.AddressBookProviderFlow.msgflow メッセージ・フローを開きます。
  2. メッセージ・フローの SOAP Input ノードを右クリックし、「プロパティー」をクリックして、「プロパティー」ビューを表示します。
  3. 「プロパティー」ビューで「JMS トランスポート」タブを選択します。
  4. 「ロケーション JNDI URL バインディング」フィールドに、JMSAdmin.config ファイルの PROVIDER_URL 行に指定したパスを入力します。
  5. ノード・プロパティーに入力したパスが JMSAdmin.config ファイル内のパスと一致していることを確認してください。 これら 2 つのパスが一致していないとメッセージ・フローは機能しません。
  6. メッセージ・フローを保存します。
  7. メッセージ・フロー・エディターで AddressBook.AddressBookConsumerFlow.msgflow メッセージ・フローを開き、上記の手順を実行して、SOAPRequest ノードで .bindings ファイルの場所を構成します。
  8. これでメッセージ・フローが構成され、ブローカーにデプロイする準備ができました。

BAR ファイルの再ビルドおよびメッセージ・フローのデプロイ

変更後の AddressBookConsumerFlow フローと AddressBookProviderFlow フローをデプロイするために、両方のメッセージ・フローを組み込んだブローカー・アーカイブ (BAR) ファイルを再ビルドします。

BAR ファイルをビルドするには、次のようにします。

  1. BAR ファイル AddressBook.AddressSampleConsumer.bar をダブルクリックします。
  2. 「管理」タブで「ビルド」をクリックして、BAR ファイルを再ビルドします。
  3. ビルドされた BAR ファイルを保存します。
  4. BAR ファイル AddressBook.AddressSampleProvider.bar をダブルクリックします。
  5. 「管理」タブで「ビルド」をクリックして、BAR ファイルを再ビルドします。
  6. ビルドされた BAR ファイルを保存します。
  7. 「ブローカー」ビューで BAR ファイルをクリックし、各 BAR ファイルを 1 つずつ「ブローカー」ビュー内のデフォルトの実行グループにドラッグします。この操作により、フローがブローカーにデプロイされます。

これで、サンプルを実行する準備ができたことになります。

サンプルのホームに戻る