Camel Spring XML Auto Configuration
This is only applicable when using Spring XML files with the camel-spring-xml
JAR.
A spring XML file is the XML files that uses <beans>
as root tag and have an embedded <camelContext>
. This is the classic way of using XML DSL with Apache Camel. That was implemented before Spring Boot.
If you use Camel on Spring Boot, then look at Camel Context Auto Configuration instead.
Autoconfiguration of Optional Services
Camel will configure these functions by doing a lookup in the Spring bean registry to find beans of the given type.
The following list all requires at most one bean defined. If there is more than one bean of this type, then Camel will not use it.
Type | Number of beans | Description |
---|---|---|
| 0..1 | To use a third-party async process await manager. |
| 0..1 | To use a third-party BacklogTracer. |
| 0..1 | To use a third-party class resolver. More details at Pluggable Class Resolvers. |
| 0..1 | To use a Debugger usually for tooling. |
| 0..1 | To use a third-party Delayer. |
| 0..1 | To use a third-party event factory. |
| 0..1 | To use a third-party executor service manager. More details at Threading Model. |
| 0..1 | To use a third-party executor service strategy. More details at Threading Model. |
| 0..1 | To use a third-party factory finder. |
| 0..1 | To use a third-party HeadersMapFactory implementation. |
| 0..1 | To use a third-party HealthCheckRegistry implementation. |
| 0..1 | To use a third-party in flight repository. |
| 0..1 | To use provided org.slf4j.Logger for Log component and log() EIP. |
| 0..1 | To use a third-party strategy for naming |
| 0..1 | To use a third-party strategy for management, for example, JMX management. |
| 0..1 | To use a third-party MessageHistoryFactory implementation. |
| 0..1 | To use a third-party model JAXB ContextFactory |
| 0..1 | To use a third-party node id factory. |
| 0..1 | To use a third-party package scan resolver. More details at Pluggable Class Resolvers. |
| 0..1 | To use a third-party processor factory. |
| 0..1 | To use a third-party bean registry. By default, Camel will use Spring ApplicationContext (when using Spring) as registry. |
| 0..1 | To use a third-party |
| 0..1 | To use a third-party |
| 0..1 | To use a third-party shutdown strategy. |
| 0..1 | To use a third-party Stream caching strategy. |
| 0..1 | To use a third-party thread pool factory. More details at Threading Model. |
| 0..1 | To use a bean that has the tracing options configured. |
| 0..1 | To use a third-party Tracer. |
| 0..1 | To use third-party |
| 0..1 | To use a third-party UuidGenerator. |
And the following options have support for any number of beans defined.
Type | Number of beans | Description |
---|---|---|
| 0..n | To detect Clustering services. |
| 0..n | To use third-party endpoint strategies. |
| 0..n | To use third-party event notifiers. |
| 0..n | To use Camel Health Check repositories. |
| 0..n | To use your own Interceptthat intercepts every processing step in all routes in the CamelContext. For instance, you can use this to do an AOP like performance timer interceptor. |
| 0..n | To use third-party lifecycle strategies. |
| 0..n | To use custom |
| 0..n | To use third-party model lifecycle strategies. |
| 0..n | To use a third-party route policy factory to create a route policy for every route. |
| 0..n | To use camel-cloud Service Registries. |