Apache Camel
Encyclopedia
Apache Camel is a rule-based routing and mediation engine which provides a Java object
-based implementation of the Enterprise Integration Patterns
using an 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 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 is also supported.
Camel is often used with Apache ServiceMix
, Open ESB
, Apache ActiveMQ
and Apache CXF
in service-oriented architecture
infrastructure projects.
Plain Old Java Object
In computing software, POJO is an acronym for Plain Old Java Object. The name is used to emphasize that a given object is an ordinary Java Object, not a special object...
-based implementation of the Enterprise Integration Patterns
Enterprise Integration Patterns
Enterprise Integration Patterns is a book by Gregor Hohpe and Bobby Woolf and describes a number of design patterns for the use of enterprise application integration and message-oriented middleware....
using an API
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
(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
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
using regular Java code without large amounts of XML configuration files, though XML configuration inside Spring is also supported.
Camel is often used with Apache ServiceMix
Apache ServiceMix
Apache ServiceMix is an enterprise-class open-source distributed enterprise service bus and service-oriented architecture . It was built from the ground up on the semantics and APIs of the Java Business Integration specification JSR 208 and released under the Apache License...
, Open ESB
Open ESB
Open ESB is a Java based open source enterprise service bus. Open ESB can be used as a platform for both Enterprise Application Integration and SOA. Open ESB is built on open standards....
, Apache ActiveMQ
Apache ActiveMQ
Apache ActiveMQ is an open source message broker which fully implements the Java Message Service 1.1 . It provides "Enterprise Features" like clustering, multiple message stores, and ability to use any database as a JMS persistence provider besides VM, cache, and journal persistency.Apart from...
and Apache CXF
Apache CXF
Apache CXF is an open-source, fully featured Web services framework. It originated as the combination of two open-source projects: Celtix developed by IONA Technologies and XFire developed by a team hosted at Codehaus. These two projects were combined by people working together at the Apache...
in service-oriented architecture
Service-oriented architecture
In software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...
infrastructure projects.
Support
Enterprise support for Camel is available from independent vendors including:- FuseSource Corp. - FuseSource offers an enterprise version of Camel called Fuse Mediation RouterFUSE Mediation RouterFuse Mediation Router is an open source tool for integrating services using Enterprise Integration Patterns based on Apache Camel for use in enterprise IT organizations. It is certified, productized and fully supported by the people who wrote the code...
that is tested, certified and supported. - Talend - Talend offers an enterprise version of Apache Camel called Talend Integration Factory that is tested, certified and supported.
See also
- Enterprise messaging systemEnterprise messaging systemAn enterprise messaging system is a set of published Enterprise-wide standards that allows organizations to send semantically precise messages between computer systems. EMS systems promote loosely coupled architectures that allow changes in the formats of messages to have minimum impact on...
- Message-oriented middlewareMessage-oriented middlewareMessage-oriented middleware is software or hardware infrastructure supporting sending and receiving messages between distributed systems. MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple...
- Apache ActiveMQApache ActiveMQApache ActiveMQ is an open source message broker which fully implements the Java Message Service 1.1 . It provides "Enterprise Features" like clustering, multiple message stores, and ability to use any database as a JMS persistence provider besides VM, cache, and journal persistency.Apart from...
- Apache CXFApache CXFApache CXF is an open-source, fully featured Web services framework. It originated as the combination of two open-source projects: Celtix developed by IONA Technologies and XFire developed by a team hosted at Codehaus. These two projects were combined by people working together at the Apache...
- Apache MINAApache MINAApache MINA is an open source Java network application framework. MINA can be used to create scalable, high performance network applications. MINA provides unified API's for various transports like TCP, UDP, serial communication. It also makes it easy to make an implementation of custom transport...
- Apache ServiceMixApache ServiceMixApache ServiceMix is an enterprise-class open-source distributed enterprise service bus and service-oriented architecture . It was built from the ground up on the semantics and APIs of the Java Business Integration specification JSR 208 and released under the Apache License...
- Fuse Mediation RouterFUSE Mediation RouterFuse Mediation Router is an open source tool for integrating services using Enterprise Integration Patterns based on Apache Camel for use in enterprise IT organizations. It is certified, productized and fully supported by the people who wrote the code...
- Open ESBOpen ESBOpen ESB is a Java based open source enterprise service bus. Open ESB can be used as a platform for both Enterprise Application Integration and SOA. Open ESB is built on open standards....
- Enterprise service busEnterprise service busAn enterprise service bus is a software architecture model used for designing and implementing the interaction and communication between mutually interacting software applications in Service Oriented Architecture...
- Service-oriented architectureService-oriented architectureIn software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...
- Event-driven SOAEvent-driven SOAEvent-driven SOA is a form of service-oriented architecture , combining the intelligence and proactiveness of event-driven architecture with the organizational capabilities found in service offerings...
- Guaraná DSLGuaraná DSLGuaraná DSL is a Domain-Specific Language to design enterprise application integration solutions at a high-level of abstraction. The resulting models are platform-independent, so engineers do not need to have skills on a low-level integration technology when designing their solutions...
External links
- Camel Home
- tooling for Apache Camel
- CamelOne 2011 Conference
- Enterprise Integration Pattern training videos
- Online training for Camel
- Enterprise Camel (Fuse Mediation Router)
- Enterprise Camel (Fuse Mediation Router) documentation
- Enterprise Camel (Fuse Mediation Router) forums
- Enterprise Integration Patterns in Camel
- Methods & Tools article - Camel, an Open Source Routing Framework
- JDJ article - SOA Made Easy with Open Source Apache Camel
- DZone article - Apache Camel: Integration Nirvana
- Enterprise Integration Patterns with Apache Camel Refcard
- Camel enterprise subscriptions
- Apache Camel JBI Service Engine
- http://cwiki.apache.org/qpid/Apache Apache QpidApache QpidApache Qpid is an open source messaging system which implements the Advanced Message Queuing Protocol. It provides transaction management, queuing, distribution, security, management, clustering, federation and heterogeneous multi-platform support.-See also:*Apache ActiveMQ*Message-oriented...
]