An informal grouping of Camel components.
This list was refined from the main components page in support of establishing information for the following poster:
- The Apache Camel Components Poster (PDF, PDF w/ crops and bleed, JPG image, Printed) by Gliesian LLC. (October, 2013)
Automating Tasks
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Timer / camel-core
| Used to generate message exchanges when a timer fires You . Events can only consume events be consumed from this endpoint. | |||||
Quartz / camel-quartz
| Provides a scheduled delivery of messages using the Quartz 1.x scheduler. | |||||
Quartz2 / camel-quartz2
| Provides a scheduled delivery of messages using the Quartz 2.x scheduler. |
Amazon
Component / ArtifactId / URI | Description | |||||||
---|---|---|---|---|---|---|---|---|
| For working with Amazon's CloudWatch (CW). | |||||||
| For working with Amazon's DynamoDB (DDB). | |||||||
| For working with Amazon's SimpleDB (SDB). | |||||||
| For working with Amazon's Simple Email Service (SES). | |||||||
| For Messaging with Amazon's Simple Notification Service (SNS). | |||||||
| For Messaging with Amazon's Simple Queue Service (SQS). | |||||||
| For working with Amazon's Simple Storage Service (S3). |
...
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
Bean / camel-core
| Uses the Bean Binding to bind message exchanges to beans in the Registry. Is also used for exposing and invoking POJO ( Plain Old Java Objects (POJOs). | ||||||||
Class / camel-core
| Uses the Bean Binding to bind message exchanges to beans in based on the Registryclass name. Is also used for exposing and invoking POJO (Plain Old Java Objects)POJOs. | ||||||||
DataFormat Context / camel-corecontext
| Used to refer to endpoints within a separate CamelContext to provide a simple black box composition approach so that routes can be combined into a CamelContext and then used as a black box component inside other routes in other CamelContext. | ||||||||
for working with Data Formats as if it was a regular Component supporting Endpoints and URIs. | Language / camel-core
| Executes Languages scripts | For working with Data Formats as if it was a regular Component supporting Endpoints and URIs. | ||||||
Exec Properties / camel-coreexec
| The properties component facilitates using property placeholders directly in endpoint uri definitions. | For executing system commands. | |||||||
| Component for lookup of existing endpoints bound in the Registry. |
Chat
| Executes Languages scripts. | |||||
Printer / camel-printer
| ||||||
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
IRC / camel-irc
| For IRC communication | Facilitates creation of printer endpoints to local, remote and wireless printers. The endpoints provide the ability to print camel directed payloads when utilized on camel routes. | ||||
Properties XMPP / camel-xmppcore
| Working with XMPP and Jabber |
Clusters
...
Component / ArtifactId / URI
...
Description
JGroups / camel-jgroups in camel-extra
...
jgroups://clusterName
...
The jgroups:
component provides exchange of messages between Camel infrastructure and JGroups clusters.
Facilitates using property placeholders directly in endpoint URI definitions. | ||||||
Ref / camel-core
| Component for lookup of existing endpoints bound in the Registry. |
Chat
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
IRC / camel-irc
| For Internet Relay Chat (IRC) communication. | |||||
XMPP / camel-xmpp
| Working with the Extensible Messaging and Presence Protocol (XMPP). |
Clusters
ZooKeeper / camel-zookeeper
...
zookeeper://zookeeperServer[:port][/path][?<options>]
...
Working with ZooKeeper cluster(s)
...
Component / ArtifactId / URI | Description | ||||||
---|---|---|---|---|---|---|---|
DNS JGroups / camel-dnsjgroups in camel-extra
| To lookup domain information and run DNS queries using DNSJava | Provides exchange of messages between Camel infrastructure and JGroups clusters. | |||||
Zookeeper Exec / camel-execzookeeper
| For executing system commands | Working with ZooKeeper clusters. |
Content Repositories
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
CMIS Flatpack / camel-flatpackcmis
| Processing fixed width or delimited files or messages using the FlatPack library | Uses the Apache Chemistry client API to interface with Content Management Interoperability Services (CMIS). | |||||||
| For reading/writing from/to an HDFS filesystem | ||||||||
Code Block | none | none | |||||||
scp://hostName[:port]/destination[?<options>]
| Support for the scp protocol | Storing a message in a Java Content Repository (JCR) compliant repository like Apache Jackrabbit. |
Endpoint Communications
Component / ArtifactId / URI | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Direct / camel-core
| Synchronous call to another endpoint from same CamelContext. | |||||||||
| Uses Jakarta Commons Logging to log the message exchange to some underlying logging system like log4j | |||||||||
Code Block | none | none | ||||||||
lpr://host:port/path/to/printer[?<options>]
| The printer component facilitates creation of printer endpoints to local, remote and wireless printers. The endpoints provide the ability to print camel directed payloads when utilized on camel routes. | |||||||||
Code Block | none | none | ||||||||
stream:[in|out|err|file|header|url][?<options>]
| Read or write to an input/output/error/file stream rather like unix pipes | |||||||||
Code Block | none | none | ||||||||
ssh:[username[:password]@]hostName[:port][?<options>]
| For sending commands to a SSH server |
...
Synchronous call to another endpoint in another CamelContext running in the same Java virtual machine (JVM). | ||||||
Disruptor / camel-disruptor
| Provides asynchronous SEDA behavior much as the standard SEDA Component, but utilizes a Disruptor instead of a BlockingQueue. | |||||
Disruptor VM / camel-disruptor
| Same as Disruptor, but the buffers of the Disrupter VMm endpoints also provides support for communication across CamelContexts instances so you can use this mechanism to communicate across web applications. | |||||
SEDA / camel-core
| Asynchronous call to another endpoint in the same Camel Context; staged event-driven architecture (SEDA). | |||||
VM / camel-core
| Asynchronous call to another endpoint in the same JVM. |
ESB
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
CMIS JBI / camel-cmisservicemix-camel in org.apache.servicemix
| Uses the Apache Chemistry client API to interface with CMIS supporting CMS | ||||||||
Code Block | none | none | |||||||
jcr://user:password@repository/path/to/node[?<options>]
| Storing a message in a JCR compliant repository like Apache Jackrabbit |
...
| For Java Business Integration (JBI) integration such as working with Apache ServiceMix. | |||||
NMR / apache-servicemix-nmr in org.apache.servicemix.nmr
| Integration with the Normalized Message Router bus in Apache ServiceMix. | |||||
Vert.x / camel-vertx
| Working with the Vert.x event bus. |
Feeds
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
CouchDB Atom / camel-couchdbatom
| To integrate Working with Apache CouchDBAbdera for atom integration, such as consuming an atom feed. | ||||||||
Db4o RSS / camel-db4o in camel-extrarss
| For using a db4o datastore as a queue via the db4o library |
| Working with ROME for Rich Site Summary (RSS) integration. |
File I/O and Transfer
Component / ArtifactId / URI | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
File / camel-core
EJB / camel-ejb
| Uses the Bean Binding to bind message exchanges to EJBs. It works like the Bean component but just for accessing EJBs. Supports EJB 3.0 onwards. | ||||||||||||
Code Block | none | none | |||||||||||
hbase://table[?<options>]
| For reading/writing from/to an HBase store (Hadoop database) | ||||||||||||
Code Block | xml | xml | |||||||||||
hibernate://entityName
| For using a database as a queue via the Hibernate library | ||||||||||||
Code Block | none | none | |||||||||||
ibatis://statementName[?<options>]
| Performs a query, poll, insert, update or delete in a relational database using Apache iBATIS | ||||||||||||
Code Block | none | none | |||||||||||
jdbc:dataSourceName[?<options>]
| For performing JDBC queries and operations | ||||||||||||
Code Block | none | none | |||||||||||
jpa://entityName[?<options>]
| For using a database as a queue via the JPA specification for working with OpenJPA, Hibernate or TopLink | ||||||||||||
Code Block | none | none | |||||||||||
krati://[path to datastore/][?<options>]
| For producing to or consuming to Krati datastores | ||||||||||||
Code Block | none | none | |||||||||||
mongodb:connectionBean[?<options>]
| Interacts with MongoDB databases and collections. Offers producer endpoints to perform CRUD-style operations and more against databases and collections, as well as consumer endpoints to listen on collections and dispatch objects to Camel routes | ||||||||||||
Code Block | none | none | |||||||||||
mybatis://statementName[?<options>]
| Performs a query, poll, insert, update or delete in a relational database using MyBatis | ||||||||||||
Code Block | none | none | |||||||||||
sql:select * from table where id=#[?<options>]
| Performing SQL queries using JDBC | ||||||||||||
Code Block | xml | xml | |||||||||||
spring-neo4j:http://hostname[:port]/database[?options]
| Component for producing to Neo4j datastore using the Spring Data Neo4j library |
ESB
...
Component / ArtifactId / URI
...
Description
JBI / servicemix-camel
...
jbi:serviceName
...
For JBI integration such as working with Apache ServiceMix
NMR / servicemix-nmr
...
nmr://serviceName
...
Integration with the Normalized Message Router BUS in ServiceMix 4.x
Feeds
...
Component / ArtifactId / URI
...
Description
Atom / camel-atom
...
atom:atomUri[?<options>]
...
Working with Apache Abdera for atom integration, such as consuming an atom feed.
RSS / camel-rss
...
rss:uri[?<options>]
...
Working with ROME for RSS integration, such as consuming an RSS feed.
File I/O
...
Component / ArtifactId / URI
...
Description
File / camel-core
...
file://nameOfFileOrDirectory[?<options>]
...
Sending messages to a file or polling a file or directory.
FTP / camel-ftp
...
ftp:contextPath[?<options>]
...
Sending and receiving files over FTP.
FTPS / camel-ftp
...
ftps://[username@]hostName[:port]/directoryName[?<options>]
...
Sending and receiving files over FTP Secure (TLS and SSL).
SFTP / camel-ftp
...
sftp://[username@]hostName[:port]/directoryName[?<options>]
...
Sending and receiving files over SFTP (FTP over SSH).
...
Component / ArtifactId / URI
...
Description
...
gauth://name[?<options>]
...
Used by web applications to implement an OAuth consumer. See also Camel Components for Google App Engine.
...
ghttp:contextPath[?<options>]
...
Provides connectivity to the URL fetch service of Google App Engine but can also be used to receive messages from servlets. See also Camel Components for Google App Engine.
...
glogin://hostname[:port][?<options>]
...
Used by Camel applications outside Google App Engine (GAE) for programmatic login to GAE applications. See also Camel Components for Google App Engine.
...
gtask://queue-name[?<options>]
...
Supports asynchronous message processing on Google App Engine by using the task queueing service as message queue. See also Camel Components for Google App Engine.
...
gmail://user@g[oogle]mail.com[?<options>]
...
Supports sending of emails via the mail service of Google App Engine. See also Camel Components for Google App Engine.
Google Guava EventBus / camel-guava-eventbus
...
guava-eventbus:busName[?<options>]
...
The Google Guava EventBus allows publish-subscribe-style communication between components without requiring the components to explicitly register with one another (and thus be aware of each other). This component provides integration bridge between Camel and Google Guava EventBus infrastructure.
Sending messages to a file or polling a file or directory. | ||||||
Flatpack / camel-flatpack
| Processing fixed width or delimited files or messages using the FlatPack library. | |||||
FTP / camel-ftp
| Sending and receiving files over File Transfer Protocol (FTP). | |||||
FTPS / camel-ftp
| Sending and receiving files over FTP Secure (TLS and SSL). | |||||
HDFS / camel-hdfs
| For reading/writing from/to an Hadoop Distributed File System (HDFS) filesystem. | |||||
Jsch / camel-jsch
| Support for the scp protocol using the Client API of the Java Secure Channel (JSch) project. | |||||
SFTP / camel-ftp
| Sending and receiving files over FTP Secure (FTP and SSH). | |||||
Stream / camel-stream
| Reading or writing to a stream. |
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
| Used by web applications to implement an OAuth consumer. | |||||
| Provides connectivity to the URL fetch service of Google App Engine but can also be used to receive messages from servlets. | |||||
| Used by Camel applications outside Google App Engine (GAE) for programmatic login to GAE applications. | |||||
| Supports asynchronous message processing on Google App Engine by using the task queueing service as message queue. | |||||
| Supports sending of emails via the mail service of Google App Engine. | |||||
Guava EventBus / camel-guava-eventbus
| The Google Guava EventBus allows publish-subscribe style communication between components without requiring the components to explicitly register with one another (and thus be aware of each other). This component provides integration bridge between Camel and Google Guava EventBus infrastructure. |
HTTP
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
AHC / camel-ahc
| To call external HTTP services using Async Http Client. | |||||
Cometd / camel-cometd
| HTTP-based event routing bus used to deliver messages using the Jetty Cometd implementation of the Bayeux Protocol. | |||||
HTTP / camel-http
| For calling out to external HTTP servers using Apache HTTP Client 3.x. | |||||
HTTP4 / camel-http4
| For calling out to external HTTP servers using Apache HTTP Client 4.x. | |||||
Jetty / camel-jetty
| For exposing services over HTTP. | |||||
Servlet / camel-servlet
| For exposing services over HTTP through the Servlet which is deployed into the Web container. |
Java Message Service
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
ActiveMQ / activemq-camel in org.apache.activemq
| For JMS Messaging with Apache ActiveMQ | |||||
JMS / camel-jms
| Working with JMS provider. | |||||
RabbitMQ / camel-rabbitmq
| For JMS Messaging with RabbitMQ. | |||||
SJMS / camel-sjms
| From the ground upwards implementation of a JMS client. | |||||
Stomp / camel-stomp
| For communicating with Stomp compliant message brokers, like Apache ActiveMQ or ActiveMQ Apollo. | |||||
ZeroMQ / camel-zeromq in camel-extra.
| For JMS Messaging with ZeroMQ. |
LDAP
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
LDAP / camel-ldap
| Performing searches on Lightweight Directory Access Protocol (LDAP) servers. | |||||
Spring LDAP / camel-spring-ldap
| Camel wrapper for Spring LDAP. Spring LDAP is a Java library for simplifying LDAP operations, based on the pattern of Spring's JdbcTemplate. |
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
IMAP / camel-mail
| Receiving email using Internet Message Access Protocol (IMAP). | |||||
IMAPS / camel-mail
| Receiving email using secured IMAP. | |||||
POP3 / camel-mail
| Receiving email using Post Office Protocol (POP3) and JavaMail. | |||||
POP3S / camel-mail
| Receiving email using secured POP3 and JavaMail. | |||||
SMTP / camel-mail
| Sending email using Simple Mail Transfer Protocol (SMTP) and JavaMail. | |||||
SMTPS / camel-mail
| Sending email using secured SMTP and JavaMail. |
Maintenance and Monitoring
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Browse / camel-core
| Provides a simple BrowsableEndpoint which can be useful for testing, visualisation tools or debugging. The exchanges sent to the endpoint are all available to be browsed. | |||||
ControlBus / camel-core
| ControlBus EIP that allows to send messages to Endpoints for managing and monitoring your Camel applications. | |||||
JMX / camel-jmx
| For working with Java Management Extensions (JMX) notification listeners. | |||||
Log / camel-core
| Uses Jakarta Commons Logging to log the message exchange to some underlying logging system like log4j. | |||||
Metrics / camel-metrics
| Uses Metrics to collect application statistics directly from Camel routes. | |||||
Nagios / camel-nagios
| Sending passive checks to Nagios using JSendNSCA.. Nagios supports IT Infrastruture Monitoring. | |||||
SNMP / camel-snmp
| Polling OID values and receiving traps using SNMP via SNMP4J library. |
Messaging
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
AMQP / camel-amqp
| For Messaging with the Advanced Message Queuing Protocol (AMQP). | |||||
Esper / camel-esper in camel-extra
| Working with the Esper Library for Event Stream Processing. | |||||
JavaSpace / camel-javaspace
| Sending and receiving messages through JavaSpace. | |||||
JT/400 / camel-jt400
| For integrating with data queues on an AS/400 (i.e., System i, IBM i, i5, etc.) systems. | |||||
Kestrel / camel-kestrel
| For producing to or consuming from Kestrel queues. | |||||
MQTT / camel-mqtt
| Component for communicating with MQ Telemetry Transport (MQTT) machine-to-machine (M2M) message brokers. | |||||
Sip / camel-sip
| Publish/Subscribe communication capability using the Session Initiation Protocol (SIP) protocol. | |||||
SIPS / camel-sip
| Publish/Subscribe communication capability using the secured Session Initiation Protocol (SIP) protocol. | |||||
SMPP / camel-smpp
|
http
...
Component / ArtifactId / URI
...
Description
AHC / camel-ahc
...
ahc:http[s]://hostName[:port][/resourceUri][?<options>]
...
To call external HTTP services using Async Http Client
Cometd / camel-cometd
...
cometd://hostName:port/channelName[?<options>]
...
Used to deliver messages using the jetty cometd implementation of the bayeux protocol
HTTP / camel-http
...
http:hostName[:port][/resourceUri][?<options>]
...
For calling out to external HTTP servers using Apache HTTP Client 3.x
HTTP4 / camel-http4
...
http4:hostName[:port][/resourceUri][?<options>]
...
For calling out to external HTTP servers using Apache HTTP Client 4.x
Jetty / camel-jetty
...
jetty:hostName[:port][/resourceUri][?<options>]
...
For exposing services over HTTP
SERVLET / camel-servlet
...
servlet:relativePath[?<options>]
...
For exposing services over HTTP through the servlet which is deployed into the Web container.
In-Memory Management
...
Component / ArtifactId / URI
...
Description
Direct / camel-core
...
direct:someName[?<options>]
...
Synchronous call to another endpoint from same CamelContext.
Direct-VM / camel-core
...
direct-vm:someName[?<options>]
...
Synchronous call to another endpoint in another CamelContext running in the same JVM.
Disruptor / camel-disruptor
...
disruptor:someName[?<option>]
...
To provide the implementation of SEDA which is based on disruptor
Disruptor VM / camel-disruptor
...
disruptor-vm:someName[?<option>]
...
...
SEDA / camel-core
...
seda:someName[?<options>]
...
Asynchronous call to another endpoint in the same Camel Context
VM / camel-core
...
vm:queueName[?<options>]
...
Asynchronous call to another endpoint in the same JVM
JMS
...
Component / ArtifactId / URI
...
Description
ActiveMQ / activemq-camel
...
activemq:[topic:]destinationName
...
For JMS Messaging with Apache ActiveMQ
ActiveMQ Journal / activemq-core
...
activemq.journal:directory-on-filesystem
...
Uses ActiveMQ's fast disk journaling implementation to store message bodies in a rolling log file
JMS / camel-jms
...
jms:[queue:|topic:]destinationName[?<options>]
...
Working with JMS providers
RabbitMQ / camel-rabbitmq
...
rabbitmq://hostname[:port]/exchangeName[?<options>]
...
Component for integrating with RabbitMQ
SJMS / camel-sjms
...
sjms:[queue:|topic:]destinationName[?<options>]
...
A ground up implementation of a JMS client
Stomp / camel-stomp
...
stomp:queue:destinationName[?<options>]
...
For communicating with Stomp compliant message brokers, like Apache ActiveMQ or ActiveMQ Apollo
ZeroMQ / camel-zeromq in camel-extra.
...
zeromq:(tcp|ipc)://hostname:port
...
The ZeroMQ component allows you to consumer or produce messages using ZeroMQ.
LDAP
...
Component / ArtifactId / URI
...
Description
LDAP / camel-ldap
...
ldap:host[:port][?<options>]
...
Performing searches on LDAP servers (<scope> must be one of object|onelevel|subtree)
Spring LDAP / camel-spring-ldap
...
spring-ldap:springLdapTemplateBean[?<options>]
...
Camel wrapper for Spring LDAP
Component / ArtifactId / URI | Description | |
---|---|---|
Code Block | none | none |
pop3s://[username@]hostName port][?<options>]
| Receiving email using POP3 and JavaMail | |
Code Block | none | none |
pop3s://[username@]hostName port][?<options>]
| ... | |
Code Block | none | none |
smtps://[username@]hostName[:port][?<options>]
| Sending email using SMTP and JavaMail | |
Code Block | none | none |
smtps://[username@]hostName[:port][?<options>]
| ... | |
Code Block | none | none |
imap://[username@]hostName[:port][?<options>]
| Receiving email using IMAP | IMAPS / camel-mail
| ... |
Maintenance and Monitoring
To send and receive SMS using Short Messaging Service Center using the JSMPP library. | |||||||||
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
Browse / camel-coresmpp
| Provides a simple BrowsableEndpoint which can be useful for testing, visualisation tools or debugging. The exchanges sent to the endpoint are all available to be browsed. | ||||||||
Code Block | none | none | |||||||
controlbus:command[?<options>]
| ControlBus EIP that allows to send messages to Endpoints for managing and monitoring your Camel applications. |
| To send and receive secured SMS using Short Messaging Service Center using the JSMPP library. | ||||||
Quickfix / camel-quickfix
| Implementation of the QuickFix for Java engine which allow to send/receive FIX messages. |
Networking
Component / ArtifactId / URI | Description | |||||||
---|---|---|---|---|---|---|---|---|
DNS / camel-dns
| To lookup domain information and run Domain Name System (DNS) queries using DNSJava. | |||||||
HL7 / camel-hl7
| ||||||||
Code Block | none | none | ||||||
jmx://platform[?<options>]
| For working with JMX notification listeners | Nagios / camel-nagios
|
Messaging
...
Component / ArtifactId / URI
...
Description
AMQP / camel-amqp
...
amqp:[queue:|topic:]destinationName[?<options>]
...
For Messaging with AMQP protocol
JavaSpace / camel-javaspace
...
javaspace:jini://hostName[?<options>]
...
Sending and receiving messages through JavaSpace
JT/400 / camel-jt400
...
jt400://user:pwd@system/<path_to_dtaq>[?<options>]
...
For integrating with data queues on an AS/400 (aka System i, IBM i, i5, ...) system
Kestrel / camel-kestrel
...
kestrel://[addresslist/]queueName[?<options>]
...
For producing to or consuming from Kestrel queues
MQTT / camel-mqtt
...
mqtt:name[?<options>]
...
Component for communicating with MQTT M2M message brokers
SIP / camel-sip
...
sip://user@hostName[:port][?<options>]
...
Publish/Subscribe communication capability using the Telecom SIP protocol. RFC3903 - Session Initiation Protocol (SIP) Extension for Event
SIPS / camel-sip
...
sips://user@hostName[:port][?<options>]
...
...
SMPP / camel-smpp
...
smpp://[username@]hostName[:port][?<options>]
...
To send and receive SMS using Short Messaging Service Center using the JSMPP library
SMPPS / camel-smpp
...
smpps://[username@]hostName[:port][?<options>]
...
...
SNMP / camel-snmp
...
snmp://hostName[:port][?<options>]
...
Polling OID values and receiving traps using SNMP via SNMP4J library
Quickfix / camel-quickfix
...
quickfix:configFile[?<options>]
...
Implementation of the QuickFix for Java engine which allow to send/receive FIX messages
Networking
...
Component / ArtifactId / URI
...
Description
MINA / camel-mina
...
mina:[tcp|udp|vm]:host[:port][?<options>]
...
Working with Apache MINA 1.x
MINA2 / camel-mina2
...
mina2:[tcp|udp|vm]:host[:port][?<options>]
...
Working with Apache MINA 2.x
TCP / camel-mina
...
mina:tcp://host:port[?<options>]
...
Working with TCP protocols using Apache MINA
UDP / camel-mina
...
mina:udp://host:port[?<options>]
...
Working with UDP protocols using Apache MINA
HL7 / camel-hl7
...
mina2:tcp://hostName[:port][?<options>]
...
For working with the HL7 MLLP protocol and the HL7 model using the HAPI library
Netty
...
Component / ArtifactId / URI
...
Description
Netty / camel-netty
...
netty:<tcp|udp>//host[:port][?<options>]
...
Working with TCP and UDP protocols using Java NIO based capabilities offered by the Netty project
Netty HTTP / camel-netty-http
...
netty-http:http:[port]/context-path[?<options>]
...
Netty HTTP server and client using the Netty project
OSGI
...
Component / ArtifactId / URI
...
Description
EventAdmin / camel-eventadmin
...
eventadmin:topic[?<options>]
...
Receiving OSGi EventAdmin events
Pax-Logging / camel-paxlogging
...
paxlogging:appender
...
Receiving Pax-Logging events in OSGi
Routing
...
Component / ArtifactId / URI
...
Description
Context / camel-context
...
context:camelContextId:localEndpointName[?<options>]
...
Used to refer to endpoints within a separate CamelContext to provide a simple black box composition approach so that routes can be combined into a CamelContext and then used as a black box component inside other routes in other CamelContexts
For working with the HL7 MLLP protocol and the HL7 model using the HAPI library. | ||||||
MINA / camel-mina
| Working with Apache Multipurpose Infrastructure for Network Applications (MINA) 1.x. Transmission Control Protocol (TCP), User Datagram Protocol (UDP) and Virtual Machine (VM) protocol are supported. | |||||
MINA2 / camel-mina2
| Working with Apache MINA 2.x. Transmission Control Protocol (TCP), User Datagram Protocol (UDP) and Virtual Machine (VM) protocol are supported. | |||||
Netty / camel-netty
| Working with TCP and UDP protocols using Java NIO based capabilities offered by the Netty project. | |||||
Netty HTTP / camel-netty-http
| Netty HTTP server and client using the Netty project. |
OSGi
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
EventAdmin / camel-eventadmin
| Receiving OSGi EventAdmin events. | |||||
Pax Logging / camel-paxlogging
| Receiving Pax-Logging events in OSGi. |
Persistence
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
CouchDB / camel-couchdb
| To integrate with Apache CouchDB. | |||||
Db4o / camel-db4o in camel-extra
| For using a db4o datastore as a queue via the db4o (database for objects) library. | |||||
EJB / camel-ejb
| Uses the Bean Binding to bind message exchanges to Enterprise Java Beans (EJBs). It works like the Bean component but just for accessing EJBs. Supports EJB 3.0 onwards. | |||||
HBase / camel-hbase
| For reading/writing from/to an HBase store (Hadoop database). | |||||
Hibernate / camel-hibernate in camel-extra
| For using a database as a queue via the Hibernate library. | |||||
iBATIS / camel-ibatis
| Performs a query, poll, insert, update or delete in a relational database using Apache iBATIS. | |||||
JDBC / camel-jdbc
| For performing Java Database Connectivity (JDBC) queries and operations. | |||||
JPA / camel-jpa
| For using a database as a queue via the Java Persistence API (JPA) specification for working with OpenJPA, Hibernate or TopLink. | |||||
Krati / camel-krati
| For producing to or consuming to Krati datastores. | |||||
MongoDB / camel-mongodb
| Interacts with MongoDB databases and collections. Offers producer endpoints to perform CRUD-style operations and more against databases and collections, as well as consumer endpoints to listen on collections and dispatch objects to Camel routes. | |||||
MyBatis / camel-mybatis
| Performs a query, poll, insert, update or delete in a relational database using MyBatis. | |||||
SQL / camel-sql
| Performing Structured Query Language (SQL) queries using JDBC. | |||||
Spring Neo4j / camel-spring-neo4j in camel-extra
| Component for producing to Neo4j datastore using the Spring Data Neo4j library. |
Platform Support
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Activiti / activiti-camel
| For working with Activiti, a light-weight workflow and Business Process Management (BPM) platform which supports BPMN 2. | |||||
APNS / camel-apns
| For sending notifications to Apple iOS devices. | |||||
Salesforce / camel-salesforce
| To integrate with Salesforce. | |||||
SAP NetWeaver / camel-sap-netweaver
| To integrate with SAP NetWeaver Gateway. |
Remote Services
Routebox / camel-routebox
...
routebox:routeBoxName[?<options>]
...
Facilitates the creation of specialized endpoints that offer encapsulation and a strategy/map based indirection service to a collection of camel routes hosted in an automatically created or user injected camel context
Security
...
Component / ArtifactId / URI
...
Description
Crypto (Digital Signatures) / camel-crypto
...
crypto:<sign|verify>:name[?<options>]
...
Used to sign and verify exchanges using the Signature Service of the Java Cryptographic Extension.
XML Security / camel-xmlsecurity
...
xmlsecurity:<sign|verify>:name[?<options>]
...
Used to sign and verify exchanges using the XML signature specification.
...
Component / ArtifactId / URI | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
ElasticSearch Avro / camel-elasticsearchavro
| For interfacing with an ElasticSearch serverWorking with Apache Avro for data serialization. | |||||||||
Lucene jclouds / camel-lucenejclouds
| Uses Apache Lucene to perform Java-based indexing and full text based searches using advanced analysis/tokenization capabilities | For interacting with cloud compute & blobstore service via jclouds. | ||||||||
JCIFS / camel-jcifs in camel-extra
SOLR / camel-solr
| Uses the Solrj client API to interface with an Apache Lucene Solr server |
Social Media
This component provides access to remote file systems over the CIFS/SMB networking protocol by using the JCIFS library. | ||||||||
RMI / camel-rmi
| ||||||||
Component / ArtifactId / URI | Description | |||||||
---|---|---|---|---|---|---|---|---|
Facebook / camel-facebook
| Providing access to all of the Facebook APIs accessible using Facebook4J | Working with Remote Method Invocation (RMI). | ||||||
SSH component Twitter / camel-twitterssh
| A twitter endpoint | For sending commands to a SSH server. |
Search Engines
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
ElasticSearch Yammer / camel-yammerelasticsearch
| Allows you to interact with the Yammer enterprise social network |
Spring
...
Component / ArtifactId / URI
...
Description
Spring Event / camel-spring
...
spring-event://default
...
Working with Spring ApplicationEvents
SpringBatch / camel-spring-batch
...
spring-batch:jobName[?<options>]
...
To bridge Camel and Spring Batch
SpringIntegration / camel-spring-integration
...
spring-integration:defaultChannelName[?<options>]
...
The bridge component of Camel and Spring Integration
Spring Redis / camel-spring-redis
...
spring-redis://hostName:port[?<options>]
...
Component for consuming and producing from Redis key-value store Redis
Templates
...
Component / ArtifactId / URI
...
Description
FreeMarker / camel-freemarker
...
freemarker:templateName[?<options>]
...
Generates a response using a FreeMarker template
Mustache / camel-mustache
...
mustache:templateName[?<options>]
...
Generates a response using a Mustache template
MVEL / camel-mvel
...
mvel:templateName[?<options>]
...
Generates a response using an MVEL template
Scalate / scalate-camel
...
scalate:templateName
...
Uses the given Scalate template to transform the message
StringTemplate / camel-stringtemplate
...
string-template:templateName[?<options>]
...
Generates a response using a String Template
Spring Redis / camel-spring-redis
...
spring-redis://hostName:port[?<options>]
...
Component for consuming and producing from Redis key-value store Redis
Testing
...
Component / ArtifactId / URI
...
Description
DataSet / camel-core
...
dataset:name[?<options>]
...
For load & soak testing the DataSet provides a way to create huge numbers of messages for sending to Components or asserting that they are consumed correctly
| For interfacing with an ElasticSearch server. | |||||
Lucene / camel-lucene
| Uses Apache Lucene to perform Java-based indexing and full text based searches using advanced analysis/tokenization capabilities. | |||||
Solr / camel-solr
| Uses the Solrj client API to interface with an Apache Lucene Solr server. |
Security
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Crypto (Digital Signatures) / camel-crypto
| Used to sign and verify exchanges using the Signature Service of the Java Cryptographic Extension. | |||||
XML Security / camel-xmlsecurity
| Used to sign and verify exchanges using the XML signature specification. |
Social Media
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Facebook / camel-facebook
| Providing access to all of the Facebook APIs accessible using Facebook4J. | |||||
Twitter / camel-twitter
| Enables the most useful features of the Twitter API by encapsulating Twitter4J. | |||||
Yammer / camel-yammer
| Allows you to interact with the Yammer enterprise social network. |
Special support
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Cache / camel-cache
| The cache component facilitates creation of caching endpoints and processors using EHCache as the cache implementation. | |||||
Geocoder / camel-geocoder
| Supports looking up geocoders for an address, or reverse lookup geocoders from an address. | |||||
| Hazelcast is a data grid supporting map, multimap, SEDA, queue, set, atomic number and simple clusters. | |||||
RCode / camel-rcode in camel-extra
| Uses Rserve to integrate Camel with the statistics environment R. | |||||
Routebox / camel-routebox
| Facilitates the creation of specialized endpoints that offer encapsulation and a strategy/map based indirection service to a collection of camel routes hosted in an automatically created or user injected camel context. | |||||
Weather / camel-weather
| Polls the weather information from Open Weather Map. |
Spring
Mock / camel-core
...
mock:name[?<options>]
...
For testing routes and mediation rules using mocks
Stub / camel-core
...
stub:someOtherCamelUri[?<options>]
...
Allows you to stub out some physical middleware endpoint for easier testing or debugging
Test / camel-spring
...
test:expectedMessagesEndpointUri[?<options>]
...
Creates a Mock endpoint which expects to receive all the message bodies that could be polled from the given underlying endpoint
...
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
Bean Validation Spring Event / camel-bean-validatorspring
| Validates the payload of a message using the Java Validation API (JSR 303 and JAXP Validation) and its reference implementation Hibernate Validator | ||||||||
Code Block | none | none | |||||||
fop:outputFormat[?<options>]
| Renders the message into different output formats using Apache FOP | ||||||||
Code Block | none | none | |||||||
msv:someLocalOrRemoteResource[?<options>]
| Validates the payload of a message using the MSV Library | ||||||||
Code Block | none | none | |||||||
rnc:/relativeOrAbsoluteUri[?<options>]
| Validates the payload of a message using RelaxNG Compact Syntax | ||||||||
Code Block | none | none | |||||||
rng:/relativeOrAbsoluteUri[?<options>]
| Validates the payload of a message using RelaxNG |
| Working with Spring Application Events. | ||||||
Spring Batch / camel-spring-batch
| To bridge Camel and Spring Batch. | ||||||||
Spring Integration / camel-spring-integration
| The bridge component of Camel and Spring Integration. | ||||||||
Spring Redis / camel-spring-redis
| Component for consuming and producing from a Redis. key-value store. |
Templates
Component / ArtifactId / URI | Description | |||||||
---|---|---|---|---|---|---|---|---|
FreeMarker / camel-freemarker
| Generates a response using a FreeMarker template. | |||||||
Mustache / camel-mustache
| Generates a response using a Mustache template. | |||||||
MVEL / camel-mvel
| Generates a response using an MVFLEX Expression Language (MVEL) template. | |||||||
Scalate / scalate-camel in org.fusesource.scalate
| Generates a response using a Scalate template. | |||||||
StringTemplate / camel-stringtemplate
| ||||||||
Code Block | none | none | ||||||
stax:(contentHandlerClassName|#myHandler)
| Process messages through a SAX ContentHandler. | |||||||
Code Block | none | none | ||||||
xquery:someXQueryResource
| Generates a response using an XQuery template | XSLT / camel-core (camel-spring for Camel 2.8 or older)
| Generates a response using an XSLT template a String Template. | |||||
Velocity Validation / camel-core (camel-spring for Camel 2.8 or older)velocity
| Validates the payload of a message using XML Schema and JAXP Validation |
...
Generates a response using an Apache Velocity template |
Testing
Component / ArtifactId / URI | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| Working with Apache CXF for web services integration | For load and soak testing the DataSet provides a way to create huge numbers of messages for sending to Components or asserting that they are consumed correctly. | |||||||||
Mock / camel-core
CXF Bean / camel-cxf
| Proceess the exchange using a JAX WS or JAX RS annotated bean from the registry. Requires less configuration than the above CXF Component | For testing routes and mediation rules using mocks. | |||||||||
Stub / camel-core
CXFRS / camel-cxf
| Working with Apache CXF for REST services integration | Allows you to stub out some physical middleware endpoint for easier testing or debugging. | |||||||||
Test Restlet / camel-restletspring
| Component for consuming and producing Restful resources using Restlet |
| Creates a Mock endpoint which expects to receive all the message bodies that could be polled from the given underlying endpoint. |
Web Services
Component / ArtifactId / URI | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
CXF / camel-cxf
RMI / camel-rmi
| Working with RMI Apache CXF for web services integration. | |||||||||
CXF Bean Spring Web Services / camel-spring-wscxf
| Client-side support for accessing web services, and server-side support for creating your own contract-first web services using Spring Web Services | Proceess the exchange using a JAX-WS or JAX-RS annotated bean from the registry. | ||||||||
CXFRS / camel-cxf
Websocket / camel-websocket
| Communicating with Websocket clients |
Platform support
Working with Apache CXF for RESTful services integration. | |||||||||||||
Component / ArtifactId / URI | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
APNS / camel-apnsrestlet
| For sending notifications to Apple iOS devices | Component for consuming and producing Restful resources using Restlet. | |||||||||||
Salesforce | / camel- | salesforcerest-swagger
| none
| none | salesforce:topic
| To integrate with Salesforce | Component for accessing REST resources using Swagger specification as configuration. | ||||||
Spring Web Services SAP NetWeaver / camel-sapspring-netweaverws
| To integrate with SAP NetWeaver Gateway | ||||||||||||
Code Block | none | none | |||||||||||
vertx:eventBusName
| Working with the vertx event bus |
Special support
Client-side support for accessing web services, and server-side support for creating your own contract-first web services using Spring Web Services. | ||||||
Websocket / camel-websocket
| ||||||
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Avro / camel-avro
| Working with Apache Avro for data serialization. | Communicating with Websocket clients. |
XML
Component / ArtifactId / URI | Description | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Bean Validator / camel-bean-validator
Cache / camel-cache
| The cache component facilitates creation of caching endpoints and processors using EHCache as the cache implementation. | Validates the payload of a message using the Java Validation API (JSR 303). Hibernate Validator. is the reference implementation. | ||||||||||
FOP / camel-fop
Geocoder / camel-geocoder
| Supports looking up geocoders for an address, or reverse lookup geocoders from an address. | Renders the message into different output formats using Formatting Objects Processor (FOP), which is driven by XSL formatting objects (XSL-FO). | ||||||||||
MSV / camel-msv
| Hazelcast is a data grid entirely implemented in Java (single jar). This component supports map, multimap, seda, queue, set, atomic number and simple cluster support. | |||||||||||
Code Block | Validates the payload of a message using the MSV Library. | |||||||||||
RNC / camel-jing
| Validates the payload of a message using RelaxNG Compact Syntax. | |||||||||||
RNG / camel-jing
| xml | xml | ||||||||||
rcode://host[:port]/operation[?options]
| Uses Rserve to integrate Camel with the statistics environment R | Weather / camel-weather
| Polls the weather information from Open Weather Map |
Miscellaneous
Validates the payload of a message using RelaxNG. | ||||||
StAX / camel-stax
| Process messages through a Simple API for XML (SAX) ContentHandler. | |||||
XQuery / camel-saxon
| Generates a response using an XQuery template. | |||||
XSLT / camel-core
| Generates a response using a Extensible Stylesheet Language Transformations (XSLT) template. | |||||
Validation / camel-core
| Validates the payload of a message using XML Schema and Java API for XML Processing (JAXP) Validation | |||||
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Code Block | xml | xml | ||||
activiti:camelProcess:serviceTask
| For working with Activiti, a light-weight workflow and Business Process Management (BPM) platform which supports BPMN 2 | |||||
Code Block | xml | xml | ||||
esper:name
| Working with the Esper Library for Event Stream Processing | |||||
Code Block | none | none | ||||
jclouds:<blobstore|compute>:[provider id][?<options>]
| For interacting with cloud compute & blobstore service via jclouds | JCIFS / camel-jcifs in camel-extra Code Block | | xml | xml | |
smb://user@server.example.com/sharename?password=secret&localWorkDirectory=/tmp
|