1

メッセージごとに異なる特定の時間までメッセージ配信を遅らせたい。

の使用を推奨する weblogic 10.3 WLMessage のドキュメントを参照しjavax.jms.Message.getIntProperty("JMS_BEA_DeliveryTime")ました。

JMS_BEA_DeliveryTimeただし、どのように設定すればよいかわかりませんINTEGER。私はそれを期待していましたlong

この属性に関するドキュメントを見つけることができず、JMS_BEA_DeliveryTimeそれを設定および使用する方法を説明できません。希望の配達時間を設定する方法や、この属性の使用に関するドキュメントへのリンクの例を誰か教えてください。

私のコードは、Spring JMS テンプレートの典型的な使用法に似ています。

 jmsTemplate.send(destination, new MessageCreator() {
                public Message createMessage(Session session) throws JMSException {
                  TextMessage message = session.createTextMessage(textMessage);
                  return message;
                }
            });

メッセージを返す前に配信時間のヘッダーを設定できるかどうか疑問に思っていました。

4

2 に答える 2

1

さまざまな JMS プロバイダーの配信を遅らせる例を示した良い記事(WL を含む)。

于 2012-11-20T07:17:31.707 に答える
1

さて、このページがあります

JMS Delivery Time: The earliest absolute time at which 
                   a message can be delivered to a consumer.

Message.setIntProperty(...)で設定するのは簡単なはずですが、実際の時間が何を構成するかについてはあまり言及されていませんが、今から数ミリ秒を示唆するこの記事を見つけました。

それが役立つことを願っています。

于 2012-11-20T12:45:38.150 に答える