Message Driven Bean

1624 ワード

MDBは、メッセージが到着したときにコンテナによって呼び出される非同期メッセージ消費プログラムである.
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);