The router schema—which defines the XML DSL—belongs to the following XML schema namespace:
http://camel.apache.org/schema/spring
The location of the router schema is normally specified to be
http://camel.apache.org/schema/spring/camel-spring.xsd
, which references the
latest version of the schema on the Apache Web site. For example, the root
beans
element of an Fuse Mediation Router Spring file is normally configured as shown in
Example 1.2.
Example 1.2. Specifying the Router Schema Location
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:camel="http://camel.apache.org/schema/spring"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<!-- Define your routing rules here -->
</camelContext>
</beans>
At run time, Fuse Mediation Router does not download the router schema from
schema location specified in the Spring file. Instead, Fuse Mediation Router automatically picks up a
copy of the schema from the root directory of the camel-spring
JAR file. This
ensures that the version of the schema used to parse the Spring file always matches the
current runtime version. This is important, because the latest version of the schema posted
up on the Apache Web site might not match the version of the runtime you are currently
using.
Generally, it is recommended that you edit your Spring files using a full-feature XML editor. An XML editor's auto-completion features make it much easier to author XML that complies with the router schema and the editor can warn you instantly, if the XML is badly-formed.
XML editors generally do rely on downloading the schema from the
location that you specify in the xsi:schemaLocation
attribute. In order to be
sure you are using the correct schema version whilst editing, it is usually a good idea to
select a specific version of the camel-spring.xsd
file. For example, to edit a
Spring file for the 2.3 version ofFuse Mediation Router, you could modify the beans element as
follows:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:camel="http://camel.apache.org/schema/spring"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring-2.3.0.xsd">
...
Change back to the default, camel-spring.xsd
, when you are finished
editing. To see which schema versions are currently available for download, navigate to the
Web page, http://camel.apache.org/schema/spring.