-
Bug
-
Resolution: Done
-
Minor
-
CSB-3.20.5
-
8
-
False
-
-
False
-
-
-
-
Moderate
-
Very Likely
-
0
The Camel for Spring Boot documentation makes a number of incorrect statements about JMS client IDs. A client ID may be used for the JMS component and also the AMQP component.
The documentation [1] implies, or sometimes states explicitly, the client IDs are mandatory, and must be unique across the entire installation.
47.2.3. Durable Subscriptions If you wish to use durable topic subscriptions, you need to specify both clientId and durableSubscriptionName.
Client IDs are not required for JMS 2.0 shared durable subscriptions.
The same kinds of problems can be seen in the upstream Camel documentation [2] as well.
The documentation also makes frequent reference to 'virtual topics', which are an ActiveMQ concept, and not relevant to other message brokers. The use of virtual topics to work around the lack of shared durable subscription support should not be necessary with a JMS 2.0 broker.
It seems to me that this documentation was at least partly written before JMS 2.0. I can see that some changes have been made to account for changes in 2.0, but there are signs of a pre-2.0 view of JMS.
I'm not sure I can point out in detail all the points that need consideration. In my view, it just needs somebody who knows about JMS 2.0 to review it.
To the best of my knowledge, it is the documentation that is wrong, not the implementation. Camel does not actually insist on the programmer providing client IDs, when they are not needed.
[2] https://camel.apache.org/components/4.0.x/jms-component.html