[
https://issues.apache.org/activemq/browse/CAMEL-372?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=48298#action_48298
]
Willem Jiang commented on CAMEL-372:
------------------------------------
Now I don't think we should set the JMS endpoint to be true.
If we have the rule like this
{code}
from("jms:queue:queueA?concurrentConsumers=4").to("jms:queue:queueB")
form("jms:queue:queueB?concurrentConsuers=4").to("mock:endpoint");
{code}
The upper 2 JMS endpoint will share a same JMSTransactionMananger if we set the
transacted to be true and the CurrentConsumer=4, we can't not get the result
message from jms:queue:queueB.
So I don't think we need to make the JMS endpoint default to be transactional.
Since it is so complicated when we write the queue to queue routing rules, to
be make sure the rule can work without any additional configuration, I don't
want to set the JMS endpoint to be trasactional by default.
But if the user doesn't inject the transactionManager and set the transactioned
to be true , we should create a JMSTransactionManager by default.
> JMS endpoints should default to be transactional; using the JMS transaction
> manager if no transaction manager is explicitly configured?
> ---------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-372
> URL: https://issues.apache.org/activemq/browse/CAMEL-372
> Project: Apache Camel
> Issue Type: Improvement
> Reporter: James Strachan
> Assignee: Willem Jiang
> Fix For: 2.0.0
>
>
> Its such a common use case - using camel-jms should be transactional out of
> the box unless the user explicitly disables transactions. So defaulting the
> transactionManager property seems to make sense
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.