|JMS Cache Coordination: setDeliveryMode to be non persistent on the TopicPublisher [message #1708247]
||Mon, 14 September 2015 22:59
| Leny Tan
Registered: September 2015
We are enabling Cache Coordination using JMS in our application. Currently, we're in version EclipseLink 2.2.0. |
We need to have a way to setDeliveryMode of the messages to be NON PERSISTENT. We currently are using ActiveMQ JMS Broker.
According to the Apache ActiveMQ documentation, we can either:
1. Set the NON_PERSISTENT message delivery flag on your MessageProducer
2. Set the persistent=false flag in the <broker/> element of the Xml Configuration or on the property BrokerService
Unfortunately, option#2 is not an option for us since we don't own the broker and it's managed by other team and the broker is not a dedicated broker just for our use cases.
Therefore, we are left with option#1, which is to set NON_PERSISTENT message delivery flag on the MessageProducer.
Looking into the EclipseLink code and debug into it, EclipseLink has its own implementation for JMS remote connection and is done via JMS Publisher (JMSTopicRemoteConnection). So, for publishing connection externally it's done via executeCommandInternal method. In this method, they'll publish entity changed to the topic. I don't see a way to override or EclipseLink exposing a way to setDeliveryMode.
Hope to get some pointers, suggestions, or see if anyone have a better solution than forking EclipseLink.
Powered by FUDForum
. Page generated in 0.01968 seconds