public class MQJmsResourceReleaser
extends org.mule.jms.commons.internal.source.DefaultJmsResourceReleaser
| Constructor and Description |
|---|
MQJmsResourceReleaser() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
doCleanConnection(javax.jms.Connection connection)
Cleans the connection as described in the class JavaDoc.
|
void |
releaseConsumerMessageListener(org.mule.jms.commons.internal.source.push.MessageListenerContext info)
The default implementation of the message listener cleanup sets the @
MessageConsumer message listener to
null, avoiding further message dispatches. |
public void releaseConsumerMessageListener(org.mule.jms.commons.internal.source.push.MessageListenerContext info)
MessageConsumer message listener to
null, avoiding further message dispatches. Since there's a known issue with the IBM MQ driver, regarding the
setMessageListener operation and a concurrent failure in one of its dispatch threads, this can be "emulated" by switching our
JmsMessageListener to a rejection state, in which all
incoming messages are Un-Acknowledged.releaseConsumerMessageListener in interface org.mule.jms.commons.internal.source.JmsResourceReleaserreleaseConsumerMessageListener in class org.mule.jms.commons.internal.source.DefaultJmsResourceReleaserinfo - Information about the target listener to do the cleanup.protected void doCleanConnection(javax.jms.Connection connection)
IBMMQConnectionProvider is configured with a caching strategy, this
cleaner will fail not finding the 'commonConn' field. Regardless of that, since the actual connection object being cached by
SDK is a proxy generated by Spring-JMS, the underlying connection will be re-created once the reconnection is handled by the
org.springframework.jms.connection.SingleConnectionFactory exception listener.doCleanConnection in class org.mule.jms.commons.internal.source.DefaultJmsResourceReleaserconnection - the connection to be cleanedCopyright © 2025 MuleSoft, Inc.. All rights reserved.