0
仕様:IBMMQ 7.xの、Jdk1.7、TOMCAT7、のWinOS-7IBMMQメッセージ
質問:継続的に指定IBMMQと警告/トリガにキューを監視するリスナーイベント/新鮮なメッセージのxは消費するために利用可能であることを私に通知する。
問題: 'For-Loop'またはTimerまたはCronはNOTです - 新しいメッセージのキューを監視することができます。
アドバイスは高く評価されます。
仕様:IBMMQ 7.xの、Jdk1.7、TOMCAT7、のWinOS-7IBMMQメッセージ
質問:継続的に指定IBMMQと警告/トリガにキューを監視するリスナーイベント/新鮮なメッセージのxは消費するために利用可能であることを私に通知する。
問題: 'For-Loop'またはTimerまたはCronはNOTです - 新しいメッセージのキューを監視することができます。
アドバイスは高く評価されます。
代わりに、メッセージリスナーを設定し、メッセージが到着したときにそれらを消費しないようにしてください。メッセージがキューに到着すると、アプリケーションのメッセージリスナーが呼び出されます。
JmsFactoryFactory ff = JmsFactoryFactory.getInstance(WMQConstants.WMQ_PROVIDER);
// Create connection factory
cf = ff.createConnectionFactory();
// Set MQ properties
cf.setStringProperty(WMQConstants.WMQ_QUEUE_MANAGER, "QM1");
cf.setIntProperty(WMQConstants.WMQ_CONNECTION_MODE, WMQConstants.WMQ_CM_CLIENT);
cf.setIntProperty(WMQConstants.WMQ_PORT,1414);
cf.setStringProperty(WMQConstants.WMQ_HOST_NAME, "localhost");
cf.setStringProperty(WMQConstants.WMQ_CHANNEL, "MY.SVRCONN");
System.out.println("Connection Factory created.");
connection = cf.createConnection();
System.out.println("Connection created.");
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
System.out.println("Session created.");
Destination destination = session.createQueue("SUB.Q");
System.out.println("Destination created: " + destination.toString());
consumer = session.createConsumer(destination);
System.out.println("Consumer created.");
// Now receive messages asynchronously
// Create and register a new MessageListener for this consumer
consumer.setMessageListener(new MessageListener() {
public void onMessage(Message msg) {
try {
// Display the message that just arrived
//System.out.println(msg);
TextMessage txtMsg = (TextMessage)msg;
System.out.println(txtMsg.getText());
} // end try
catch (Exception e) {
System.out.println("Exception caught in onMessage():\n" + e);
}
return;
} // end onMessage()
}); // end setMessageListener
connection.start();
Thread.sleep(5000);
session.close();
>>なぜセットアップuは私のコードでこれを行うことができますどのようにメッセージリスナ〜ジャワ、同じことを検証するための参照URLまたはサンプルコードを提供してください:ここでは
は、サンプルコードです。 –IBM MQに同梱のMessageListener JMSサンプルを参照してください。サンプルはMqインストールディレクトリの下にあります。 – Shashi
Sir ..上記で提供されたコードは1回分のメッセージ消費です...間違っていれば正解...私はすでにそのコードを持っており、継続的にイベントを受信するためにリスナーを監視しています... "For-LoopタイマーかCronはNOTである - 新しいメッセージのためのキューを監視することを許可されます。 –