Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Apache Camel is a powerful rule based routing and mediation engine which provides a POJO based implementation of the Enterprise Integration Patterns using an extremely powerful fluent API (or declarative Java Domain Specific Language) to configure routing and mediation rules. The Domain Specific Language means that Apache Camel can support type-safe versatile open-source integration framework based on known Enterprise Integration Patterns.

Camel empowers you to define routing and mediation rules in a variety of domain-specific languages, including a Java-based Fluent API, Spring or Blueprint XML Configuration files, and a Scala DSL. This means you get smart completion of routing rules in your IDE using regular Java code without huge amounts of XML configuration files; though Xml Configuration inside Spring is also supported, whether in a Java, Scala or XML editor.

Apache Camel uses generics, annotations and URIs so that it can easily URIs to work directly with any kind of Transport or messaging model such as HTTP, ActiveMQ, JMS, JBI, SCA, MINA or CXF Bus API without mandating a normalized message API which can often lead to leaky abstractions, as well as pluggable Components and Data Format options. Apache Camel is also a small library which has with minimal dependencies for easy embedding in any Java application. Apache Camel lets you work with the same API regardless which kind of Transport is used - so learn the API once and you can interact with all the Components provided out-of-box.

Apache Camel provides support for Bean Binding and seamless integration with popular frameworks such as CDISpring, Blueprint and Guice. Camel also has extensive support for unit testing your routes.

The following projects can leverage Apache Camel can be used as a routing and mediation engine for the following projects:

  • Apache ServiceMix - a popular distributed open source ESB and JBI container
  • Apache ActiveMQ - a mature, widely used ActiveMQ which is the most popular and powerful open source message broker
  • Apache CXF which is - a smart web services suite (JAX-WS and JAX-RS)
  • Apache Karaf - a small OSGi based runtime in which applications can be deployed
  • Apache MINA - a networking frameworkApache ServiceMix which is the most popular and powerful distributed open source ESB and JBI containerhigh-performance NIO-driven networking framework

So don't get the hump , - try Camel today! (smile)

Tip
titleToo many buzzwords - what exactly is Camel?

Okay, so the description above is technology focused.
There's a great discussion about Camel at Stack Overflow. We suggest you view the post, read the comments, and browse the suggested links for more details.