Camel uses a Java Domain Specific Language or DSL for creating Enterprise Integration Patterns or Routes in a variety of domain-specific languages (DSL) as listed below.
- Java DSL - A Java based DSL using the fluent builder style.
- Spring XML - A XML based DSL in Spring XML files
- Blueprint XML - A XML based DSL in OSGi Blueprint XML files
- Rest DSL - A DSL to define REST services using a REST style in either Java or XML.
- Groovy DSL - A Groovy based DSL using Groovy programming language
- Scala DSL - A Scala based DSL using Scala programming language
- Annotation DSL - Use annotations in Java beans.
- Kotlin DSL - Work in progress - Currently developed outside ASF, but will we included later in Camel when Kotlin and the DSL is ready.
The main entry points for the DSL are
- CamelContext for creating a Camel routing rulebase
- RouteBuilder for creating a collection of routes using the routing DSL
For more examples of the DSL in action see