Apache Camel is an open source framework for message-oriented middleware with a rule-based routing and mediation engine that provides a Java object-based implementation of the Enterprise Integration Patterns using an application programming interface (or declarative Java domain-specific language) to configure routing and mediation rules. The domain-specific language means that Apache Camel can support type-safe smart completion of routing rules in an integrated development environment using regular Java code without large amounts of XML configuration files, though XML configuration inside Spring Framework is also supported.
Camel is often used with Apache ServiceMix, Apache ActiveMQ and Apache CXF in service-oriented architecture projects.
- Several Maven-plugins are provided for validation and deployment.
- Graphical, Eclipse-based tooling is freely available from Red Hat. It provides graphical editing and debugging and advanced validation.
- Eclipse based tooling from Talend.
- Ibsen, Claus; Anstey, Jonathan (2010), Camel in Action (1st ed.), Manning Publications, p. 552, ISBN 978-1-935182-36-8
- Cranton, Scott; Korab, Jakub (2013), Apache Camel Developer's Cookbook (1st ed.), Packt Publishing, p. 424, ISBN 978-1-78217-030-3
- Ibryam, Bilgin (2013), Instant Apache Camel Message Routing (1st ed.), Packt Publishing, p. 62, ISBN 978-1-78328-347-7
- Ibryam, Bilgin (2016), Camel Design Patterns (1st ed.), Leanpub, p. 111