Hi all, we are working a lot with RouteTemplates. We often struggle the issue of the Route naming order dependency
What do you think? I have already created a JIRA Issue in the backlog: https://issues.apache.org/jira/browse/CAMEL-18683 As a testcase: Name your RouteTemplate: ZTemplate and another Routebuilder which will use the defined Template in ZTemplate. The Routebuilder will fail because the ZTemplate Route was not yet added to the routescollections. Suggestion: Use a dedicated class e.g. RouteTemplateBuilder to prioritize Routebuilder with templates See: RoutesConfigure.java private void addDiscoveredRoutes(CamelContext camelContext, List<RoutesBuilder> routes) throws Exception { // sort routes according to ordered routes.sort(OrderedComparator.get()); // first add the routes configurations as they are globally for all routes for (RoutesBuilder builder : routes) { if (builder instanceof RouteConfigurationsBuilder) { RouteConfigurationsBuilder rcb = (RouteConfigurationsBuilder) builder; LOG.debug("Adding routes configurations into CamelContext from RouteConfigurationsBuilder: {}", rcb); camelContext.addRoutesConfigurations(rcb); } } // first add the all route templates as they are globally for all routes for (RoutesBuilder builder : routes) { if (builder instanceof RouteTemplateBuilder) { LOG.debug("Adding route tempaltes into CamelContext from RoutesBuilder: {}", builder); camelContext.addRoutes(builder); } } // then add the routes for (RoutesBuilder builder : routes) { LOG.debug("Adding routes into CamelContext from RoutesBuilder: {}", builder); camelContext.addRoutes(builder); } } }