【问题标题】:TIBCO-EMS: Set message delay based on JMS message headerTIBCO-EMS:根据 JMS 消息头设置消息延迟
【发布时间】:2021-10-29 09:46:30
【问题描述】:

我需要根据特殊情况对不同的消息进行不同的延迟。有没有办法像在 ActiveMQ 中一样使用 TIBCO EMS 在消息头中设置传递延迟?

ActiveMQ example:

MessageProducer producer = session.createProducer(destination);
TextMessage message = session.createTextMessage("test msg");
    
if (condition) {
   long time = 60 * 1000;
   message.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY, time);
}
producer.send(message);

【问题讨论】:

  • Tibco EMS 是否支持 JMS 2?
  • 这里有什么反馈吗?
  • 您使用的是什么版本的 Tibco EMS?
  • Tibco EMS 8.5.1

标签: java jms tibco-ems


【解决方案1】:

如果 Tibco EMS 支持 JMS 2,那么您可以使用 javax.jms.MessageProducer#setDeliveryDelay(long)

MessageProducer producer = session.createProducer(destination);
TextMessage message = session.createTextMessage("test msg");
    
if (condition) {
   long time = 60 * 1000;
   producer.setDeliveryDelay(time);
}
producer.send(message);

【讨论】:

  • TIBCO EMS 8.X 支持 JMS 2.0 规范
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-08
  • 2019-07-18
  • 2014-09-27
  • 2014-02-15
  • 2011-03-27
相关资源
最近更新 更多