1.7.0
Changes between 1.6.0 and 1.7.0
This is a maintenance release that includes bug fixes, enhancements, and an upgrade of the RabbitMQ Java client dependency. This release is backward-compatible with 1.6.0.
Let RMQObjectFactory
handle properties from a hash table
It's now possible to provide all required properties via the Hashtable
environment third argument of RMQObjectFactory#getObjectInstance()
method. This allows the user to create client objects on WildFly via Naming subsystem configuration.
Thanks to Rémi Bantos for this contribution.
GitHub issue: #21
Add option to take message properties into account on sending
It's now possible with the RMQConnectionFactory#preferProducerMessageProperty
flag set to false
to take into account the JMS Message
properties (priority, delivery mode, expiration date) on sending. Note this isn't compliant with the JMS specification (the default behavior follows the JMS specification).
GitHub issue: #26
Add option to requeue message on client runtime exception
The JMS specification tells to requeue a message if the client throws a RuntimeException
during delivery. The RabbitMQ JMS client wouldn't do that, it would just cancel the listener. We consider this behavior to be more natural, especially when using auto-acknowledgment mode. Nevertheless, the RMQConnectionFactory#requeueOnMessageListenerException
allows to comply to the specification when set to true
. The default is false
(dropping the message), but this default could change in the next major release.
GitHub issue: #23
Upgrade to RabbitMQ Java Client 4.1.1
The JMS Client now uses RabbitMQ Java Client 4.1.1.
GitHub issue: #18
Don't fail when sending an empty message
GitHub issue: #24
Make compliance test suite pass again
A security fixed introduced a bug that would make the Compliance Test Suite fail. This is now fixed, the CTS passes.
GitHub issue: #16