我测试了一个将 a 传递给 IBM MQ 上的队列的独立 JMS 客户端TextMessage,我得到了以下错误消息 ID:
编号:414d51204243573032413154202020205bc6bd3e25423865
java.lang.RuntimeException:没有短信
我发送了一个TextMessagewith This is for Test,但为什么我没有收到一个TextMessage?在此代码运行之前,队列中没有其他消息。
如果短信成功,如何在 Java 中以可读格式读取消息 ID(发送请求 MessageID 和回复消息 ID)。我需要在下面的代码中更改什么吗?
TextMessage textMessage = queueSession.createTextMessage("This is for Test");
textMessage.setJMSReplyTo(queue);
textMessage.setJMSType("mcd://xmlns");//message type
textMessage.setJMSExpiration(2*1000);//message expiration
textMessage.setJMSDeliveryMode(DeliveryMode.PERSISTENT);
queueSender = queueSession.createSender(queueSession.createQueue(outputQName));
queueSender.setTimeToLive(2*1000);
queueSender.send(textMessage);
String jmsCorrelationID = " JMSCorrelationID = '" + textMessage.getJMSMessageID() + "'";
while (true) {
Message message = queueReceiver.receive(60*1000);
if (! (message instanceof TextMessage))
throw new RuntimeException("no text message");
TextMessage tm = (TextMessage) message;
System.out.println("Message:"+tm.getText());
}
aluckdog
慕沐林林
ABOUTYOU
相关分类