redelivery delay

When consuming messages from a queue ( via the MessageConsumer.receive() method ), I would like to rollback the JMS transaction if a specific date that I am expecting from a database is not yet available.

I have no control of when the data that I am expecting for the specified JMS mesage will arrive in the database.

However, I want the JMS provider ( in this case Sun OMQ ) to delay the redelivery for a certain amount of seconds ( say X seconds ). Then, when I receive the message again, and still the data is not available in the database, delay it again ( say by 4X ) seconds ...

So if X = 10, redelivery for that single message will happen after 10 sec, 40 sec, 160 sec, 320 sec, etc....

Ad infinitum, until the message reaches the expiration period.

Is this possible, either in a generic way ( regardless of JMS provider ), or a SunOne OMQ-specific way ( via a JMS provider property ) ?

[930 byte] By [j.salvo] at [2007-11-26 8:22:02]
# 1
MQ doest support a redeliver delay
Linda_Schneider at 2007-7-6 21:29:34 > top of Java-index,Application & Integration Servers,Sun Java System Message Queue...