Details
Description
I wish to use SimpleMessageListenerContainer in transacted mode with multiple consumers.
But org.apache.camel.component.jms.JmsEndpoint line 224 is giving the listenerContainer a custom TaskExecutor, causing SimpleMessageListenerContainer to fail if sessionTransacted=true and concurrentConsumers>1. The custom taskExecutor causes JMS session commit to be called by the wrong thread randomly and fails.
Can we update JmsEndpoint to not set taskExecutor just for SimpleMessageListenerContainer? I've tested this by overriding the lib and it works well with sessionTransacted=true and concurrentConsumers>1 (Solace broker). SimpleMessageListenerContainer has many benefits like true event driven over the default polling listenerContainer. Will be great to get it properly supported.