Message Driven Bean
MDBは、メッセージが到着したときにコンテナによって呼び出される非同期メッセージ消費プログラムである.
MDBは、非同期の状態なしSession Beanであるメッセージベースの要求コンポーネントを処理するために使用される
MDBでは、Web側がメッセージを送信する一般的な手順は次のとおりです.
1、JNDIを探してコンテキスト環境を初期化する.例えば:
2、コンテキスト環境に応じて接続工場QueConnectionFactoryまたはTopicConnectFactoryを検索し、P 2 PモデルにはQueConnectionFactoryが適用され、Pub/subモデルにはTopicConnectFactoryが適用され、以下のコードが適用される.
3、接続工場から一つの接続を獲得する.例えば:
conn = factory.createQueueConnection();
4、接続によってセッションを確立する.
5、目的地を探す:
6、セッションによって、目的地にメッセージ生産者を設立する:
MDBは、非同期の状態なしSession Beanであるメッセージベースの要求コンポーネントを処理するために使用される
MDBでは、Web側がメッセージを送信する一般的な手順は次のとおりです.
1、JNDIを探してコンテキスト環境を初期化する.例えば:
Properties props = new Properties();
props.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
props.setProperty("java.naming.factory.url.pkgs","org.jboss.naming");
InitialContext ctx = new InitialContext(props);
2、コンテキスト環境に応じて接続工場QueConnectionFactoryまたはTopicConnectFactoryを検索し、P 2 PモデルにはQueConnectionFactoryが適用され、Pub/subモデルにはTopicConnectFactoryが適用され、以下のコードが適用される.
QueueConnectionFactory factory = (QueueConnectionFactory) ctx.lookup("ConnectionFactory");
3、接続工場から一つの接続を獲得する.例えば:
conn = factory.createQueueConnection();
conn = factory.createQueueConnection();
4、接続によってセッションを確立する.
session = conn.createQueueSession(false,QueueSession.AUTO_ACKNOWLEDGE);
5、目的地を探す:
Destination destination = (Queue) ctx.lookup("queue/BeanTest");
6、セッションによって、目的地にメッセージ生産者を設立する:
//
MessageProducer producer = session.createProducer(destination);
//
TextMessage msg = session.createTextMessage("Bean ");
//
producer.send(msg);