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.

  • Annotation DSL - Use annotations in Java beans.

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