Interstage Application Server J2EE ユーザーズガイド |
目次 索引 |
第5部 JMS編 | > 第21章 JMSアプリケーションの開発 | > 21.2 作成方法 | > 21.2.3 Message Listener |
受信したメッセージを処理するためにMessageListenerオブジェクトを登録します。メッセージが到達するとMessage Listenerが呼出されます。Message Listenerを使用してメッセージを受信する手続き例と処理の流れを以下に説明します。
[Message Listenerを使用したReceiver]
public class ReceiverA implements MessageListener { /* 1 */ public static void main() { ... ReceiverA receiver = new ReceiverA(); /* 2 */ ... try { InitialContext initialContext = new InitialContext(); /* 3 */ QueueConnectionFactory queueConnectionFactory = (QueueConnectionFactory) initialContext.lookup("java:comp/env/jms/QueueConnectionFactory"); /* 4 */ Queue queue = (Queue)initialContext.lookup("java:comp/env/jms/Queue"); /* 5 */ QueueConnection queueConnection = queueConnectionFactory.createQueueConnection(); /* 6 */ QueueSession queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); /* 7 */ QueueReceiver queueReceiver = queueSession.createReceiver(queue); /* 8 */ queueReceiver.setMessageListener(receiver); /* 9 */ queueConnection.start(); /* 10 */ 待ち合わせ処理 queueConnection.close(); /* 11 */ } catch( Exception e ) { ... } ... } public void onMessage(Message message) { ... try { } catch( JMSException e ) { ... } ... } } |
1. MessageListenerインタフェースを実装する。
2. クラスのインスタンスを生成する。
3. JNDIの開始コンテキストを構築する。
4. QueueConnectionFactoryオブジェクトを取得する。(JNDI名が“QueueConnectionFactory”の場合)
5. Queue オブジェクトを取得する。(JNDI名が“Queue”の場合)
6. QueueConnectionを作成する。
7. QueueSessionを作成する。
8. QueueReceiverを作成する。
9. MessageListenerオブジェクトを登録する。
10. 接続によるメッセージの配信を開始する。
11. QueueConnectionをクローズする。
JNDIの開始コンテキスト構築時の環境プロパティの指定については、“J2EEアプリケーションクライアント”を参照してください。
目次 索引 |