How do I import routes from other XML files
Available as of Camel 2.3
When defining routes in Camel using Xml Configuration you may want to define some routes in other XML files. For example you may have many routes and it may help to maintain the application if some of the routes are in separate XML files. You may also want to store common and reusable routes in other XML files, which you simple can import when needed.
In Camel 2.3 this is now possible to define routes outside <camelContext/>
which you do in a new <routeContext/>
tag.
For example we could have a file named myCoolRoutes.xml
which contains a couple of routes as shown:
TODO: include e1 from myCoolRoutes.xml
Then in your XML file which contains the CamelContext you can use Spring to import the myCoolRoute.xml
file.
And then inside <camelContext/>
you can refer to the <routeContext/>
by its id as shown below:
TODO: include e1 from RouteRefIncludeXmlFileTest.xml
Also notice that you can mix and match, having routes inside CamelContext and also externalized in RouteContext.
Reusable routes
The routes defined in <routeContext/>
can be reused by multiple <camelContext/>
. Hover its only the definition which is reused. At runtime each CamelContext will creates its own instance of the route based on the definition.