2010-08-28 113 views
0

“延迟表示消息变得可供消息使用者使用的时间间隔。延迟指定的消息处于等待状态,直到延迟过期并且消息变得可用“jboss上的jms:如何设置消息的延迟时间

如何在JBoss(5.1)上设置它?谢谢

+0

是什么报价指什么?您的留言内容很少,请详细说明。 – skaffman 2010-08-30 16:58:36

回答

1

您似乎在引用Oracle AQ JMS manual的一段文字。如果您想引用一对夫妇更多的句子,那会是清楚的...

延迟的消息被指定为 消息属性(JMS_OracleDelay)。 该属性未在 JMS标准中指定。它是 JMS消息属性的AQ扩展。

如果JBoss 5.1拥有类似的专有扩展,请阅读他们的文档以了解如何使用它。如果不是,你运气不好。 BEA(现在的Oracle)的WLS JMS具有类似的功能(在版本7中增加了?)。也许这对于供应商来说是一件很受欢迎的事情。也许你会得到幸运W/JBoss的...

+1

是的,JBoss 5.1拥有JMS_JBOSS_SCHEDULED_DELIVERY_PROP_NAME属性,谢谢 – QuanNH 2010-09-01 15:57:35

3

这里是我的解决方案:

for (int i = 1; i < num_of_your_message; i++) { 
    message.setLongProperty("JMS_JBOSS_SCHEDULED_DELIVERY", 
      (new Date()).getTime() + 5000 * i); 
    message.setObject(your_object); 
    producer.send(message); 
}