I think there is a confusion between starting a Route
and starting an Exchange
.
The route will be started as soon as CamelContext
will be started by the corresponding ApplicationContext
. The Exchange
on the particular route can be started using Injected ProducerTemplate
e.g.: http://camel.apache.org/pojo-producing.html
The best place to aggregate the content from the different sources is a Camel Route itself.
I would create a Service Facade and initiate Camel Exchange, using ProducerTemplate, from there, as suggested here: https://camel.apache.org/hiding-middleware.html
All the Data Sources should be accessed in the Camel route, subsequently, Camel Route will apply the corresponding Enterprise Integration Pattern to enrich/aggregate/transform the content.