I have a problem when I want to set delivery delay for each message (IBM MQ and Spring boot). Normal way is to use jmsTemplate.deliveryDelay = 324234
but the problem is we are changing the property of the jmsTemplate
which is a global object (Singlteon). So I would like to send different delivery delays per message not a delay for all the messages (delay can be varied for each message).
It seems the right way is to set this delivery in header for each message like code below. but when I tried it, it didn't work. I received messages immediately.
jmsMessage.setLongProperty(
DELAY_DELIVERY_TAG,
deliveryDelayService.delay(message)
)
Does anyone know how I can set delivery delay per message?