0
我想測試我的jms監聽器是否工作正常 發送5條消息時(例如)我添加了一個計時器 「Threat.sleep(5000)」,5秒後我想將舊的messageID與新的messageID進行比較,這意味着我想知道這些消息是否被聆聽,所以如果ID改變,這意味着他們已經成功聆聽測試如果我的jms監聽器正在工作
這是我的OnMessage代碼...但它不適用於我:((
public class Consumer implements MessageListener{
public Consumer() {
}
//@Override
public void onMessage(Message message) {
try {
TextMessage tm = (TextMessage) message;
int i;
TextMessage tm2 =tm;
for(i=0;i<1;i++)
{
try {
Thread.sleep(5000);
if (!tm.getJMSMessageID().equals(tm2.getJMSMessageID()))
{
System.out.println("\t----Listener not working----");
}
else {
System.out.println("Message reçu:");
System.out.println("\tTemps: " + System.currentTimeMillis() + " ms");
System.out.println("\tMessage ID: " + tm.getJMSMessageID());
System.out.println("\tCorrel. ID: " + tm.getJMSCorrelationID());
System.out.println("\tConsumed message: " + tm.getText());
System.out.println("\t----Listener working----");
}
//fin else
}
catch (InterruptedException ex) {
Logger.getLogger(Consumer.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
catch (JMSException jex) {
System.out.println("Exception: " + jex);
}
}
}