WebSphere Application Server V7 の WebSphere MQ メッセージング・プロバイダーを使う: 第 2 回: チャネル出口を使う

チャネル出口というのは、IBM® WebSphere® MQ チャネルのライフサイクルに定義されたポイントで実行されるユーザー・コードです。チャネル出口の使い方としては、監査、セキュリティー、圧縮、変換など、さまざまなものが考えられます。WebSphere Application Server V7 よりも前のバージョンでは、チャネル出口は完全にはサポートされていませんでしたが、V7 では接続ファクトリーに対してもアクティベーション・スペックに対してもチャネル出口を構成することができます。この記事では、チャネル出口のタイプ、チャネル出口を使う上での制約、そしてアプリケーション・サーバー環境とアプリケーション・クライアント環境でチャネル出口を使用可能にする方法を説明します。この内容は IBM WebSphere Developer Technical Journal の一部です。

Matthew Leming, WebSphere Messaging Development, IBM

Matthew Leming は 2002年に IBM に入社しました。彼は WebSphere Application Server V5 以降において、トランザクション・コンポーネントやデフォルト・メッセージング・プロバイダーなど、さまざまな領域に従事してきました。最近では、Adrian Preston と共同で WebSphere MQ メッセージング・プロバイダーを開発しました。



Graham Hopkins, Lead Tester, IBM

Graham Hopkins は 2000年に IBM に入社しました。彼は、WebSphere MQ、およびWebSphere Application Server のデフォルト・メッセージング・プロバイダーに関する業務に従事してきました。現在は WebSphere Application Server と WebSphere MQ の間の通信に関するテストのリーダーです。



2009年 6月 24日

はじめに

IBM WebSphere Application Server V7 の IBM WebSphere MQ メッセージング・プロバイダーは Java™ ベースのチャネル出口を完全にサポートしています。チャネル出口は、WebSphere MQ チャネルのライフサイクルに定義されたポイントで実行されるユーザー・コードです。チャネル出口の使い方としては、監査、セキュリティー、圧縮、変換など、さまざまなものが考えられます。

WebSphere Application Server V7 よりも前のバージョンでは、チャネル出口は完全にはサポートされておらず、カスタム・プロパティーによって構成する必要がありました。WebSphere Application Server V7 では、接続ファクトリーに対してもアクティベーション・スペックに対しても、管理コンソールまたは管理コマンドを使って、または CCDT (Client Channel Definition Table) のエントリーの中で指定することで、チャネル出口を構成することができます。


チャネル出口のタイプ

WebSphere MQ メッセージング・プロバイダーは、セキュリティー出口、送信出口、そして受信出口という 3 つの異なるタイプのチャネル出口をサポートしています。チャネル出口のタイプによって、クライアント接続チャネルのライフサイクルで呼び出されるポイントが異なります。これを示したものが表 1 です。

表 1. チャネル出口が呼び出されるタイミング
チャネル出口のタイプコンストラクターが呼び出されるタイミング
セキュリティー出口
  • チャネルが初期化される時
  • サーバーの接続チャネルにインストールされたセキュリティー出口からセキュリティー・フローを受信した時
送信出口
  • チャネルが初期化される時
  • まだキュー・マネージャーに何もデータが送信されていない時
受信出口
  • チャネルが初期化される時
  • キュー・マネージャーからデータを受信した後、そのデータがアプリケーションに渡される前

送信出口と受信出口はチェーン機能をサポートしています。つまり、WebSphere MQ メッセージング・プロバイダー・リソースに対して送信出口または受信出口を複数指定することができます。チェーン機能を使用する場合には、チェーンの最初の出口が呼び出され、その出口から返されるデータが、チェーン上にある次の出口に渡されます。すべての出口が呼び出されるまでこの動作が続き、その後、データは適宜キュー・マネージャーまたはクライアントに送信されます。

上で触れたように、WebSphere MQ メッセージング・プロバイダー・リソースにインストールされたセキュリティー出口が呼び出されるのは、対象とするアプリケーション・サーバー接続チャネルのセキュリティー出口がセキュリティー・フローを送信した場合のみです。セキュリティー出口が呼び出されるのはチャネル起動時のみであるため、セキュリティー出口は 1 度だけ実行が必要な機能の実行に理想的です。名前からもわかるように、これは通常、認証の実行を意味します。図 1 はチャネルの起動時にセキュリティー出口が呼び出される様子を示しています。

図 1. セキュリティー出口を呼び出す
セキュリティー出口を呼び出す

送信側と受信側のチャネル出口が呼び出されるのは、それぞれキュー・マネージャーにデータを送信する前、あるいはキュー・マネージャーからデータを受信した時です。このタイプのチャネル出口の典型的な使い方としては、送受信されたデータに対する課金や、あるいは圧縮のように何らかのデータ変換を行う場合などがあります。必要に応じて、チャネルのいずれの端部にも、補完する形で送信出口と受信出口をインストールすることができます。例えばチャネル出口を使って圧縮を行う場合には、チャネル両端に送信出口を配置してデータ圧縮を行う必要があり、またチャネル両端に受信出口を配置して圧縮解除を行う必要があります。この例を示したものが図 2 です。

図 2. 送信出口と受信出口を補完的に配置する
送信出口と受信出口を補完的に配置する

チャネル出口がいつ、どこで呼び出されるかについての詳細は、「参考文献」を参照してください。


チャネル出口の使い方の制約

WebSphere MQ メッセージング・プロバイダーでチャネル出口を使う場合には、以下のような制約に注意する必要があります。

  • チャネル出口を利用するためには、WebSphere MQ メッセージング・プロバイダーの接続ファクトリーまたはアクティベーション・スペックでトランスポート・タイプとして「client (クライアント)」または「bindings-then-client (バインディングの次にクライアント)」を使用する必要があります。その理由は、チャネル出口プログラムを使用できるのは、クライアント接続チャネル・ベースの接続を使用する WebSphere MQ キュー・マネージャーまたはキュー共有グループに接続する場合のみであるためです。トランスポート・モードとして「バインディングの次にクライアント」を選択した場合には、バインディング・モードの接続が失敗した場合にのみチャネル出口が実行されます。
  • WebSphere MQ は Java 以外にも、C や C++ など、多様な言語で作成されたチャネル出口をサポートしています。ただし、WebSphere MQ メッセージング・プロバイダーがサポートしているのは Java ベースのチャネル出口のみです。そのため、C や C++ によるチャネル出口を使うことはできません。
  • チャネル出口を利用する WebSphere MQ メッセージング・プロバイダー・リソースは、そのリソースを最初に使用するアプリケーションのクラスパスを利用してチャネル出口クラスをロードします。IBM が別途推奨しない限り、どこからチャネル出口のリソースをロードするかに関しては、必ず WebSphere MQ のドキュメントに従ってください。WebSphere MQ メッセージング・プロバイダーでチャネル出口用のクラスをロードする際の注意事項については、この記事の後のセクションで説明します。

単純なチャネル出口を作成する

WebSphere MQ メッセージング・プロバイダーで使用するチャネル出口を作成するためには、Java によるチャネル出口インターフェースを 1 つ以上実装する必要があります。インターフェース・セットは 2 つあり、1 つはパフォーマンスと機能を強化するためにWebSphere MQ V7 で導入されたものであり、もう 1 つは WebSphere MQ V5 から用意されているものです。WebSphere MQ メッセージング・プロバイダーにはどちらのインターフェースも使用できますが、この記事で説明する例では新しいインターフェースのみを使用します。

どちらのインターフェース・セットを使う場合も、これらのインターフェースは同じパターンに従います。チャネル出口のタイプごとに 1 つのインターフェースが用意されています。また各インターフェースには 1 つのメソッドがあり、このメソッドを実装する必要があります。これらのインターフェースとメソッド・シグニチャーを示したものが表 2 です。

表 2. チャネル出口インターフェースの定義
Interface typeInterface nameInterface method
New Send exitcom.ibm.mq.exits.WMQSendExitpublic ByteBuffer channelSendExit(MQCXP channelExitParms, MQCD channelDefinition, ByteBuffer agentBuffer)
New Receive exitcom.ibm.mq.exits.WMQReceiveExitpublic ByteBuffer channelSendExit(MQCXP channelExitParms, MQCD channelDefinition, ByteBuffer agentBuffer)
New Security exitcom.ibm.mq.exits.WMQSecurityExitpublic ByteBuffer channelReceiveExit( MQCXP channelExitParms, MQCD channelDefinition, ByteBuffer agentB
Old Send exitcom.ibm.mq.MQSendExitpublic byte[] sendExit(MQChannelExit channelExitParms, MQChannelDefinition channelDefinition, byte[] agentBuffer)
Old Receive exitcom.ibm.mq.MQReceiveExitpublic byte[] receiveExit(MQChannelExit channelExitParms, MQChannelDefinition channelDefinition, byte[] agentBuffer)
Old Security exitcom.ibm.mq.MQSecurityExitpublic byte[] securityExit(MQChannelExit channelExitParms, MQChannelDefinition channelDefinition, byte[] agentBuffer)

新しいスタイルの出口を使用する場合には、チャネル出口を作成する際とコンパイルする際に com.ibm.mq.jmqi.jar のコピーが必要です。従来のスタイルの出口を使用する場合には、com.ibm.mq.jar のコピーが必要です。これらの jar は、<WAS_INSTALL_ROOT>/lib/WMQ/ra/ ディレクトリーまたは WebSphere MQ のインストール済み環境から取得することができます。

最も単純な形式の出口では、受け渡された agentBuffer パラメーターを、その出口インターフェースのメソッドを使用して返します。リスト 1 に示すクラスは、3 つのタイプの出口の、最も基本的な実装です。この記事では、以降この例を参照することにします。

リスト 1
package com.ibm.ce;

<IMPORTS REMOVED>

/**
 * A simple channel exit that provides an implementation of a send,
 * receive and security exit.
 */
public class LoggingChannelExit implements WMQSendExit, WMQReceiveExit, WMQSecurityExit
{
     /**
      * Send exit implementation.
      */
     public ByteBuffer channelSendExit(MQCXP channelExitParms, 
						MQCD channelDefinition,   
						ByteBuffer agentBuffer) 
     {
         System.out.println("Send Exit Invoked");
         return agentBuffer;
      }

      /**
       * Receive exit implementation.
       */
      public ByteBuffer channelReceiveExit(MQCXP channelExitParms, 
						MQCD channelDefinition, 
						ByteBuffer agentBuffer) 
      {
          System.out.println("Receive Exit Invoked");
          return agentBuffer;
      }

      /**
       * Security exit implementation.
       */
      public ByteBuffer channelSecurityExit(MQCXP channelExitParms, 
						MQCD channelDefinition, 
						ByteBuffer agentBuffer) 
      {
          System.out.println("Security Exit Invoked");
          return agentBuffer;
      }
}

チャネル出口を作成する際とインストールする際には、定義された出口ごとに、構成に使用するデータを最大 32 文字まで受け渡すことができます。新しいスタイルのインターフェースでは、これらのデータに MQCXP.getUserData() メソッドを使ってアクセスすることができ、このメソッドがストリングを返します。次のセクションでは、この出口データの設定方法を説明します。


WebSphere MQ メッセージング・プロバイダー・リソースに対してチャネル出口を構成する

ある特定の WebSphere MQ メッセージング・プロバイダー・リソースに対して、どのチャネル出口を実行するかを指定するためのステップは、そのリソースが CCDT の情報をベースとしているかどうかによって異なります。リソースが CCDT をベースにしている場合には、CCDT を作成する際にチャネル出口の情報を指定します。図 3は、WebSphere MQ Explorer のツールを使用して、上記で定義した単純なチャネル出口プログラムをクライアント接続チャネル定義に追加する方法を示しています。(一部のユーザー・データが指定されていますが、この例のチャネル出口の実装では、これらのデータは使いません。)

図 3. CCDT によってチャネル出口を構成する
CCDT によってチャネル出口を構成する

CCDT では定義されていない WebSphere MQ メッセージング・プロバイダー・リソースに対してチャネル出口を追加する場合には、管理コンソールまたは wsadmin コマンドライン・ツールを使います。

管理コンソールを使う場合には、以下の手順に従います。

  1. 管理コンソールにログインし、対象の、CCDT ベースではない WebSphere MQ メッセージング・プロバイダー・アクティベーション・スペックまたは接続ファクトリーまでナビゲートします。
  2. 図 4 に示すように、パネルの右側で「Additional properties (追加のプロパティー)」の下にある、「Client transport properties (クライアント・トランスポート・プロパティー)」リンクをクリックします。
    図 4. Client transport properties (クライアント・トランスポート・プロパティー)
    Client transport properties (クライアント・トランスポート・プロパティー)
  3. 図5に示すように、対象となるチャネル出口のフィールドで、チャネル出口クラスの完全修飾名を、そのクラスのパッケージを含めて入力します。この例の場合、「com.ibm.ce.LoggingChannelExit」と入力します。複数の送信出口または受信出口が必要な場合には、それぞれの名前をカンマで区切って入力します。
    図 5. カスタム・プロパティー
    カスタム・プロパティー
  4. 該当するユーザー・データのフィールドに適宜ユーザー・データを入力します。複数のチャネル出口を定義する場合には、複数のユーザー・データ・セットをカンマで区切って定義できます。ユーザー・データよりも多くのチャネル出口が定義されている場合には、残りのチャネル出口に対するユーザー・データは空白のストリングになります。同様に、ユーザー・データとしてカンマを 2 つ連続して入力すると、リストでその位置にあるチャネル出口のユーザー・データは、空白ストリングとなります。
  5. 「OK」をクリックして変更を保存します。

チャネル出口を使用するリソースをアプリケーション・サーバー環境で使用する

チャネル出口を使うように構成された WebSphere MQ メッセージング・プロバイダー・リソースを使用するエンタープライズ・アプリケーションを作成する場合には、そのチャネル出口の実装をメッセージング・プロバイダーが確実にロードできるようにしておく必要があります。このセクションでは、それをアプリケーション・サーバー環境で実現する方法について説明します。そしてこの次のセクションでは、アプリケーション・クライアント環境でチャネル出口の実装クラスを利用できるようにする方法について説明します。

WebSphere MQ メッセージング・プロバイダーのアクティベーション・スペックまたは接続ファクトリーのインスタンスがチャネル出口を使うように構成されている場合には、メッセージング・プロバイダーは、アクティベーション・スペックまたは接続ファクトリーが作成される時に、リフレクションを使ってチャネル出口の実装クラスをロードしようとします。これが問題なく行われるようにするには、WebSphere MQ メッセージング・プロバイダーのランタイムで使用するクラス・ローダーが、チャネル出口の実装クラスにアクセスできなければなりません。これを実現するための方法は 3 つあります。

  • 最も単純な方法は、アプリケーション・サーバー・ランタイム全体に対し、チャネル出口クラスをロード可能にすることです。これはチャネル出口クラスをアプリケーション・サーバーのクラスパスに追加すれば可能です。しかし、この方法は推奨できません。クラスが実際にどこからロードされているのかわかりにくくなり、特に同じクラスの複数のバージョンが 1 つのアプリケーション・サーバーで使われている場合にはその区別が一層困難になるからです。
  • 別の方法として、チャネル出口クラスのコピーを (JAR ファイルの形で、または 1 つ以上のクラス・ファイルとして) 内部にバンドルして各アプリケーションをデプロイすることもできます。この方法は、チャネル出口を使うように構成された WebSphere MQ メッセージング・プロバイダー・アクティベーション・スペックまたは接続ファクトリーを使用するアプリケーションが 1 つしかない場合には適切です。しかしほとんどの場合、特にチャネル出口を広範に使用している場合には、この方法は望ましくありません。この方法ではアプリケーションのサイズが大きくなる上に、チャネル出口の実装をアップグレードする際に時間がかかり、間違いを起こしやすくなるからです。
  • 3 番目の、そして推奨される方法は、チャネル出口の実装を共有ライブラリーとして提供し、必要なアプリケーションから利用できるようにする方法です。この方法では、アプリケーション開発者はチャネル出口の使用を意識する必要がありません。しかもクラスパスは広範にならず、またチャネル出口の実装が変更された場合にも容易にアップグレードすることができます。WebSphere Application Server で共有ライブラリーを使うための方法はいくつかあり、共有ライブラリーの参照を使う方法や、WebSphere Application Server V7 で導入された新しいアセット・サポートを利用する方法などがあります。

チャネル出口を使うように構成された WebSphere MQ メッセージング・プロバイダー・リソースをエンタープライズ・アプリケーションが使用するにも関わらず、チャネル出口の実装がアプリケーションのクラスパスにない場合には、エラー・コード 2406 の MQException が発生します。リスト 2 は、このエラーが起きた状態を示しています。このリストの中で、アプリケーションは、送信出口として LoggingChannelExit クラスを使うように構成された WebSphere MQ メッセージング・プロバイダー接続ファクトリーを利用しようとしています。アプリケーション・サーバー環境で実行する場合、これらの例外は通常、1 つまたは複数の FFDC (First Failure Data Capture) レコードの中にキャプチャーされます。

リスト 2
com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' 
	('MQCC_FAILED') reason '2406' ('MQRC_CLIENT_EXIT_LOAD_ERROR').
	at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:206)
	... 30 more
Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2406;AMQ9535: User exit not valid. 
	[1=com.ibm.ce.LoggingChannelExit]
	at com.ibm.mq.jmqi.remote.internal.RemoteExitChain.loadJavaExitByName
(RemoteExitChain.java:1858)
	at com.ibm.mq.jmqi.remote.internal.RemoteExitChain.loadByName
(RemoteExitChain.java:1816)
	at com.ibm.mq.jmqi.remote.internal.RemoteExitChain.parseSendReceiveExitsChain
(RemoteExitChain.java:1655)
	at com.ibm.mq.jmqi.remote.internal.RemoteExitChain.loadExits
(RemoteExitChain.java:824)
	at com.ibm.mq.jmqi.remote.internal.RemoteHconn.initSendReceiveExits
(RemoteHconn.java:683)
	at com.ibm.mq.jmqi.remote.internal.system.RemoteConnectionPool.getConnection
(RemoteConnectionPool.java:295)
	at com.ibm.mq.jmqi.remote.internal.RemoteFAP.jmqiConnect(RemoteFAP.java:1371)
	at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:331)
				... 29 more
Caused by: java.lang.ClassNotFoundException: com.ibm.ce.LoggingChannelExit
	at java.net.URLClassLoader.findClass(URLClassLoader.java:419)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:643)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:609)
	at com.ibm.mq.jmqi.remote.internal.RemoteExitChain.loadJavaExitByName
(RemoteExitChain.java:1855)
				... 36 more

下記のステップは共有ライブラリーの使用方法を示しています。これにより、エンタープライズ・アプリケーションは、チャネル出口を使用するように構成された WebSphere MQ メッセージング・プロバイダーの接続ファクトリーまたはアクティベーション・スペックを使用することができるようになります。

  1. WebSphere Application Server の管理コンソールから、「Applications (アプリケーション)」 => 「Application Types (アプリケーション・タイプ)」 => 「WebSphere enterprise applications (WebSphere エンタープライズ・アプリケーション)」の順に選択し、チャネル出口を使用するように構成された WebSphere MQ メッセージング・プロバイダー・リソースを利用するアプリケーションをクリックします。
  2. 図 6 に示すように、「References (参照)」セクションの「Shared library references (共有ライブラリーの参照)」リンクをクリックします。WebSphere MQ メッセージング・プロバイダー・リソースを利用するアプリケーション・モジュールを選択し、「Reference shared libraries (共有ライブラリーを参照)」ボタンをクリックします。
  3. 対象の共有ライブラリーがまだ定義されていない場合には、「New (新規)」ボタンをクリックします (図 6 では丸で囲んであります)。すると、出口のライブラリーを検出するためのクラスパス情報を入力するパネルが表示されます。クラスパス情報を入力し、OK をクリックします。
  4. 該当のライブラリーを「Available (利用可能)」リストから選択し、矢印ボタンを使って「Selected (選択済み)」リストに移動します (図 6)。「OK」をクリックし、再度「OK」をクリックします。
    図 6. 共有ライブラリーのマッピング
    共有ライブラリーのマッピング
  5. 最後に、これらの変更を保存し、アプリケーション・サーバーを再起動します。

このエンタープライズ・アプリケーションを次回実行する際には、このアプリケーションはチャネル出口を使用するよう構成された WebSphere MQ メッセージング・プロバイダー・リソースを使用できるはずです。一例として、送信出口として LoggingChannelExit クラスを使用するように構成された WebSphere MQ メッセージング・プロバイダー接続ファクトリーを使用する、単純なアプリケーションを考えて見ましょう。この場合のアプリケーション・サーバーのログ出力はリスト 3 のようになります。

リスト 3. LoggingChannelExit の出力
[05/10/08 16:06:02:736 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:861 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:877 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:877 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:877 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:877 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:877 BST] 00000010 SystemOut     O Send Exit Invoked
[05/10/08 16:06:02:986 BST] 00000010 SystemOut     O Send Exit Invoked

チャネル出口を使用するリソースをアプリケーション・クライアント環境で使用する

WebSphere MQ メッセージング・プロバイダー接続ファクトリーをクライアント環境で使用する場合のクラスのロードに関する注意事項は、サーバー環境で使用する場合よりも単純です。チャネル出口のクラスまたは JAR をクライアント・アプリケーションの一部とするか、あるいはクライアント・アプリケーションのクラスパスを調整して、外部にあるチャネル出口のクラスまたは JAR への参照を含むようにします。この場合に最も適切な方法は、launchClient コマンドの -CCclasspath 属性を使って、外部の JAR または一連のクラスを参照する方法です。これを示したものがリスト 4 です。

リスト 4. launchClient を使ってクラスパス情報を指定する
C:\was7gm\profiles\AppSrv01\bin>launchClient.bat client.ear -CCclasspath=c:\exits\
 2809 m1
IBM WebSphere Application Server, Release 7.0
Java EE Application Client Tool
Copyright IBM Corp., 1997-2008
WSCL0012I: Processing command line arguments.
WSCL0013I: Initializing the Java EE Application Client Environment.
[05/10/08 16:18:00:002 BST] 00000000  W UOW=null source=com.ibm.ws.ssl.config.SSLConfig
 org=IBM prod=WebSphere component=Application Server thread=[P=879377:O=0:CT]
          CWPKI0041W: One or more key stores are using the default password.
WSCL0035I: Initialization of the Java EE Application Client Environment has completed.
WSCL0014I: Invoking the Application Client class Main
Send Exit Invoked
Send Exit Invoked
Send Exit Invoked

まとめ

IBM WebSphere Application Server V7.0 の WebSphere MQ メッセージング・プロバイダー・サポートにより、WebSphere MQ のエンタープライズ・メッセージング機能を直接活用する Java EE アプリケーションをデプロイすることができます。この記事では、チャネル出口の概要を説明し、またチャネル出口の利点、使用する上での制約、そしてアプリケーション・サーバー環境とアプリケーション・クライアント環境でのチャネル出口の使用例を説明しました。

参考文献

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=WebSphere
ArticleID=481811
ArticleTitle=WebSphere Application Server V7 の WebSphere MQ メッセージング・プロバイダーを使う: 第 2 回: チャネル出口を使う
publish-date=06242009