WAS6.1でJMSを使用する †WebSphere 6.xから、JMSを使用するときの設定が色々難しくなりましたね。Enterprise Services Bus(ESB)とかようわからんモノの上に構築する必要があるみたいです。とりあえずまとめておきました。 一番わかりやすいチュートリアルはRational Application Developerのヘルプですね。ヘルプをJMSで検索すると出てくるCreating a JMS serverのCreate a server and service integration bus for SOAP over JMS using WebSphere Application Server v6.x を参考にしました。 RAD内にあるServerを使用し、そこにESBのバスはJMSキューなどを構築していきます。 バスの作成、JMSキュー他の作成 †バスの作成 †
バスにメンバーを追加 †次にそのバス名をクリックし、 トポロジー >> バスメンバー を開き、追加を押下。サーバやクラスタ、WebSphere MQ サーバーから選べるみたいだけど、とりあえず「サーバ」を選択。次に「メッセージ・ストアのタイプ」を選択する画面になるので、とりあえずファイル・ストアを選択。*1 ファイルストアを選択したとき、ファイルをストアする先などを指定しますが、デフォルトでは、バスメンバ名が hoge02.server1-WS_test_Bus のとき
となってました*2。 バスに宛先を作成 †次にそのバスの設定画面で 宛先リソース >> 宛先 を選択し、宛先画面の新規作成を押下。宛先タイプは「キュー」とし ID:ws_test_queueJms とします。バスメンバはデフォルトで終了すると宛先の作成は完了です。 JMSのプロバイダにキューを作成 †リソース >> JMSプロバイダ の画面で、スコープを「サーバ」にし Default messaging provider を選択します。 追加プロパティー >> キュー で新規作成し、 名前:ws_test_queueJms JNDI:jms/ws_test_queue バス名:WS_test_Bus キュー名:ws_test_queueJms とします。 JMSのプロバイダにinput queue用のJMS queue connection factoryを作成 †リソース >> JMSプロバイダ の画面で、スコープを「サーバ」にし Default messaging provider を選択します。 追加プロパティー >> キュー接続ファクトリー で新規作成し、 名前:WebServicesInput_QCF JNDI:jms/ws_test_qcf バス名:WS_test_Bus とします。 JMSのプロバイダにreply queue:用のJMS queue connection factoryを作成 †引き続き、新規作成で 名前:WebServicesReply_QCF JNDI:jms/WebServicesReplyQCF バス名:WS_test_Bus とします。 MDBがListenするためのアクティベーション・スペックを作成 †引き続き Default messaging providerの 追加プロパティー >> アクティベーション・スペック で新規作成し、 名前:ws_test_JMSRouter JNDI:eis/ws_test_JMSRouter 宛先タイプ:キュー 宛先 JNDI 名:jms/ws_test_queue バス名:WS_test_Bus 全て保存します。以上で設定は完了です。最後にWASを再起動しましょう。 MDBの設定 †MDBの設定はRAD7.0の デプロイメントディスクリプタ>JCAアダプタ で Activation Spec JNDI名:eis/ws_test_JMSRouter <-上のJNDI名 宛先 JNDI 名:jms/ws_test_queue <-上のJNDI名 とします。ちなみにこの指定は ibm-ejb-jar-bnd.xmi に書かれるのでJ2EEの仕様で定められたモノではないみたいですね。 関連リンク †
この記事は
現在のアクセス:18239 |