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. Events can only 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. |
...
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 Plain Old Java Objects (POJOs). | ||||||||
Class / camel-core
| Uses the Bean Binding to bind message exchanges to beans based on the class name. Is also used for exposing and invoking POJOs. | ||||||||
Data Format 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
| Facilitates using property placeholders directly in endpoint URI definitionsFor executing system commands. | ||||||||
Component / ArtifactId / URI | Description | ||||||||
| Component for lookup of existing endpoints bound in the Registry. |
Chat
IRC / camel-irc
| For Internet Relay Chat (IRC) communicationExecutes Languages scripts. | |||||
XMPP Printer / camel-xmppprinter
| Working with Extensible Messaging and Presence Protocol (XMPP) and Jabber. |
Clusters
...
Component / ArtifactId / URI
...
Description
JGroups / camel-jgroups in camel-extra
...
jgroups://clusterName
...
Provides exchange of messages between Camel infrastructure and JGroups clusters.
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 / camel-core
| Facilitates using property placeholders directly in endpoint URI definitions. | |||||
Ref / camel-core
| Component for lookup of existing endpoints bound in the Registry. |
Chat
ZooKeeper / camel-zookeeper
...
zookeeper://zookeeperServer[:port][/path][?<options>]
...
Working with ZooKeeper cluster(s).
...
Component / ArtifactId / URI | Description | |||||||
---|---|---|---|---|---|---|---|---|
| Uses the Apache Chemistry client API to interface with Content Management Interoperability Services (CMIS). | For Internet Relay Chat (IRC) communication. | ||||||
| Storing a message in a Java Content Repository (JCR) compliant repository like Apache Jackrabbit. |
...
Working with the Extensible Messaging and Presence Protocol (XMPP). |
Clusters
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
CouchDB JGroups / camel-jgroups in camel-couchdbextra
| To integrate with Apache CouchDB. | Provides exchange of messages between Camel infrastructure and JGroups clusters. | |||||||
Zookeeper Db4o / camel-db4o in camel-extrazookeeper
| For using a db4o datastore as a queue via the db4o (database for objects) library. |
| Working with ZooKeeper clusters. |
Content Repositories
Component / ArtifactId / URI | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
CMIS / camel-cmis
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. Apache Chemistry client API to interface with Content Management Interoperability Services (CMIS). | ||||||||||
JCR / camel-jcr
HBase / camel-hbase
| For reading/writing from/to an HBase store (Hadoop database). | Storing a message in a Java Content Repository (JCR) compliant repository like Apache Jackrabbit. |
Endpoint Communications
Component / ArtifactId / URI | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Direct / camel-core
Hibernate / camel-hibernate in camel-extra
| For using a database as a queue via the Hibernate library. | Synchronous call to another endpoint from same CamelContext. | |||||||||
Direct-VM iBATIS / camel-ibatiscore
| Performs a query, poll, insert, update or delete in a relational database using Apache iBATIS. | ||||||||||
Code Block | none | none | |||||||||
jdbc:dataSourceName[?<options>]
| For performing Java Database Connectivity (JDBC) queries and operations. | ||||||||||
Code Block | none | none | |||||||||
jpa://entityName[?<options>]
| For using a database as a queue via the Java Persistence API (JPA) specification for working with OpenJPA, Hibernate or TopLink | ||||||||||
Code Block | none | none | |||||||||
krati://datastorePath[?<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 Structured Query Language (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. |
...
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 | |||||
---|---|---|---|---|---|---|
JBI / servicemix-camel in org.apache.servicemix
| 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 | ||||||||
---|---|---|---|---|---|---|---|---|---|
JBI Atom / servicemixcamel-camelatom
| For Java Business Integration (JBI) integration such as working with Apache ServiceMix. | ||||||||
Code Block | xml | xml | |||||||
nmr://serviceName
| Integration with the Normalized Message Router BUS in ServiceMix 4.x. |
...
| Working with Apache Abdera for atom integration, such as consuming an atom feed. | |||||
RSS / camel-rss
| Working with ROME for Rich Site Summary (RSS) integration. |
File I/O and Transfer
Component / ArtifactId / URI | Description | ||||||
---|---|---|---|---|---|---|---|
| Working with Apache Abdera for atom integration, such as consuming an atom feed. | Sending messages to a file or polling a file or directory. | |||||
Component / ArtifactId / URI | Description | ||||||
Flatpack RSS / camel-rssflatpack
| Working with ROME for RSS integration, such as consuming an RSS feed. |
File I/O
File / camel-core Code Block | | none | none | |||
file://nameOfFileOrDirectory[?<options>]
| ||||||
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). | |||||
| Sending and receiving files over FTP Secure (FTP and SSH). |
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 | |||||||
---|---|---|---|---|---|---|---|---|
Component / ArtifactId / URI | Description | |||||||
Code Block | none | none | ||||||
gauth://name[?<options>]
| Used by web applications to implement an OAuth consumer. | |||||||
Code Block | none | none | ||||||
ghttp:contextPath[?<options>]
| Provides connectivity to the URL fetch service of Google App Engine but can also be used to receive messages from servlets. | |||||||
Code Block | none | none | ||||||
glogin://hostName[:port][?<options>]
| Used by Camel applications outside Google App Engine (GAE) for programmatic login to GAE applications. |
| Used by web applications to implement an OAuth consumer. | |||||
Supports asynchronous message processing on Google App Engine by using the task queueing service as message queue. |
| Supports sending of emails via the mail Provides connectivity to the URL fetch service of Google App Engine but can also be used to receive messages from servlets. | ||||||
Google Guava EventBus GLogin / camel-guava-eventbusgae
| 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
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
| |||||||
Component / ArtifactId / URI | Description | ||||||
Code Block | none | none | |||||
ahc:http[s]://hostName[:port][/resourceUri][?<options>]
| To call external HTTP services using Async Http Client. | ||||||
Code Block | none | none | |||||
cometd://hostName:port/channelName[?<options>]
| Used to deliver messages using the jetty cometd implementation of the bayeux protocol. | ||||||
Code Block | none | none | |||||
http:hostName[:port][/resourceUri][?<options>]
| For calling out to external HTTP servers using Apache HTTP Client 3.x. | HTTP4 / camel-http4
| For calling out to To call external HTTP servers services using Apache HTTP Client 4.x Async Http Client. | ||||
Jetty Cometd / camel-jettycometd
| For exposing services over HTTP. | HTTP-based event routing bus used to deliver messages using the Jetty Cometd implementation of the Bayeux Protocol. | |||||
HTTP Servlet / camel-servlethttp
| For exposing services over HTTP through the Servlet which is deployed into the Web container. |
In-Memory Management
calling out to external HTTP servers using Apache HTTP Client 3.x. | |||||||||
HTTP4 / camel-http4
| |||||||||
Component / ArtifactId / URI | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
Direct / camel-core
| Synchronous call to another endpoint from same CamelContext. | For calling out to external HTTP servers using Apache HTTP Client 4.x. | |||||||
Jetty Direct-VM / camel-corejetty
| Synchronous call to another endpoint in another CamelContext running in the same Java virtual machine (JVM). | For exposing services over HTTP. | |||||||
Servlet Disruptor / camel-disruptorservlet
| Provides asynchronous SEDA behavior much as the standard SEDA Component, but utilizes a Disruptor instead of a BlockingQueue. | ||||||||
Code Block | none | none | |||||||
disruptor-vm:someName[?<option>]
| Provides asynchronous SEDA behavior much as the standard SEDA Component, but utilizes a Disruptor instead of a BlockingQueue. The buffers of the disrupter-vm endpoints also provides support for communication across CamelContexts instances so you can use this mechanism to communicate across web applications | ||||||||
Code Block | none | none | |||||||
seda:someName[?<options>]
| Asynchronous call to another endpoint in the same Camel Context; staged event-driven architecture (SEDA). | ||||||||
Code Block | none | none | |||||||
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:filesystemDirectory
...
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 provider.
RabbitMQ / camel-rabbitmq
...
rabbitmq://hostname[:port]/exchangeName[?<options>]
...
Component for integrating with RabbitM.
SJMS / camel-sjms
...
sjms:[queue:|topic:]destinationName[?<options>]
...
A ground up implementation of a JMS clien.
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.
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
|
LDAP
...
Component / ArtifactId / URI
...
Description
LDAP / camel-ldap
...
ldap:hostName[: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 | |||||||
---|---|---|---|---|---|---|---|---|
POP3 / camel-mail
| Receiving Sending email using Post Office Protocol (POP3) secured SMTP and JavaMail. POP3S / camel-mail Code Block | | none | none | ||||
pop3s://[username@]hostName port][?<options>]
| Receiving email using secured POP3 and JavaMail. | |||||||
Code Block | none | none | ||||||
smtp://[username@]hostName[:port][?<options>]
| Sending email using Simple Mail Transfer Protocol (SMTP) (SMTP) and JavaMai. | |||||||
Code Block | none | none | ||||||
smtps://[username@]hostName[:port][?<options>]
| Sending email using secured SMTP and JavaMail. | |||||||
Code Block | none | none | ||||||
imap://[username@]hostName[:port][?<options>]
| Receiving email using Internet Message Access Protocol (IMAP). | |||||||
Code Block | none | none | ||||||
imaps://[username@]hostName[:port][?<options>]
| Receiving email using secured IMAP. |
Maintenance and Monitoring
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 | |||||
Component / ArtifactId / URI | Description | |||||
Code Block | none | none | ||||
browse:someName
| 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. | |||||
Code Block | none | none | ||||
jmx://platform[?<options>]
| . | |||||
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). | |||||||||||
JavaSpace Esper / camel-javaspaceesper in camel-extra
| Sending and receiving messages through JavaSpace. | Working with the Esper Library for Event Stream Processing. | ||||||||||
JavaSpace / camel-javaspace
| Sending and receiving messages through JavaSpace. | |||||||||||
JT/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. | |||||||||||
| 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
| To send and receive SMS using Short Messaging Service Center using the JSMPP library. | |||||||||||
SMPPS / camel-smpp
| To send and receive secured SMS using Short Messaging Service Center using the JSMPP library. | |||||||||||
SNMP Quickfix / camel-snmpquickfix
| Polling OID values and receiving traps using SNMP via SNMP4J librar. | Quickfix / camel-quickfix
| Implementation of the QuickFix for Java engine which allow to send/receive FIX messages. |
...
Component / ArtifactId / URI | Description | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| To lookup domain information and run Domain Name System (DNS) queries using DNSJava. | |||||||||||
HL7 / camel-hl7
| 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 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 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
HL7 / camel-hl7
| 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>//hostName[: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]/contextPath[?<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 CamelContext.
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.
Search Engines
...
Component / ArtifactId / URI
...
Description
ElasticSearch / camel-elasticsearch
...
elasticsearch://clusterName[?<options>]
...
For interfacing with an ElasticSearch server.
Lucene / camel-lucene
...
lucene:searcherName:<insert|query>[?<options>]
...
Uses Apache Lucene to perform Java-based indexing and full text based searches using advanced analysis/tokenization capabilities.
SOLR / camel-solr
...
solr://hostName[:port]/solr[?<options>]
...
Uses the Solrj client API to interface with an Apache Lucene Solr server.
Social Media
...
Component / ArtifactId / URI
...
Description
Facebook / camel-facebook
...
facebook://endpoint[?<options>]
...
Providing access to all of the Facebook APIs accessible using Facebook4J.
Twitter / camel-twitter
...
twitter://endpoint[?<options>]
...
A twitter endpoint.
Yammer / camel-yammer
...
yammer://function[?<options>]
...
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.
Spring Batch / camel-spring-batch
...
spring-batch:jobName[?<options>]
...
To bridge Camel and Spring Batch.
Spring Integration / 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.
Testing
...
Component / ArtifactId / URI
...
Description
DataSet / camel-core
...
dataset:name[?<options>]
...
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
...
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.
Utilities
...
Component / ArtifactId / URI
...
Description
DNS / camel-dns
...
dns:operation[?<options>]
...
To lookup domain information and run Domain Name System (DNS) queries using DNSJava.
Exec / camel-exec
...
exec://executable[?<options>]
...
For executing system commands.
Flatpack / camel-flatpack
...
flatpack:[fixed|delim]:configFile[?<options>]
...
Processing fixed width or delimited files or messages using the FlatPack library.
HDFS / camel-hdfs
...
hdfs://hostName[:port][/path][?<options>]
...
For reading/writing from/to an Hadoop Distributed File System (HDFS) filesystem.
JSch / camel-jsch
...
scp://hostName[:port]/destination[?<options>]
...
Support for the scp protocol using the Client API of the Java Secure Channel (JSch) project.
Log / camel-core
...
log:loggingCategory[?<options>]
...
Uses Jakarta Commons Logging to log the message exchange to some underlying logging system like log4j.
Printer / camel-printer
...
lpr://hostName[:port]/printerPath[?<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.
Stream / camel-stream
...
stream:<in|out|err|file|header|url>[?<options>]
...
Read or write to an input/output/error/file stream rather like unix pipes
SSH component / camel-ssh
...
ssh:[username[:password]@]hostName[:port][?<options>]
...
For sending commands to a SSH server
XML
...
Component / ArtifactId / URI
...
Description
Bean Validation / camel-bean-validator
...
bean-validator:something[?<options>]
...
Validates the payload of a message using the Java Validation API (JSR 303 and Java API for XML Processing (JAXP) Validation) and its reference implementation Hibernate Validator.
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
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Avro / camel-avro
| Working with Apache Avro for data serialization. | |||||
jclouds / camel-jclouds
| For interacting with cloud compute & blobstore service via jclouds. | |||||
JCIFS / camel-jcifs in camel-extra
| This component provides access to remote file systems over the CIFS/SMB networking protocol by using the JCIFS library. | |||||
RMI / camel-rmi
| Working with Remote Method Invocation (RMI). | |||||
SSH component / camel-ssh
| For sending commands to a SSH server. |
Search Engines
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
ElasticSearch / camel-elasticsearch
| 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
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Spring Event / camel-spring
| 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
| Generates a response using a String Template. | |||||
Velocity / camel-velocity
| Generates a response using an Apache Velocity template |
Testing
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
DataSet / camel-core
| 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
| For testing routes and mediation rules using mocks. | |||||
Stub / camel-core
| Allows you to stub out some physical middleware endpoint for easier testing or debugging. | |||||
Test / camel-spring
| 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
| Working with Apache CXF for web services integration. | |||||
CXF Bean / camel-cxf
| Proceess the exchange using a JAX-WS or JAX-RS annotated bean from the registry. | |||||
CXFRS / camel-cxf
| Working with Apache CXF for RESTful services integration. | |||||
Restlet / camel-restlet
| Component for consuming and producing Restful resources using Restlet. | |||||
REST Swagger / camel-rest-swagger
| Component for accessing REST resources using Swagger specification as configuration. | |||||
Spring Web Services / camel-spring-ws
| 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
| Communicating with Websocket clients. |
XML
Component / ArtifactId / URI | Description | |||||
---|---|---|---|---|---|---|
Bean Validator / camel-bean-validator
| Validates the payload of a message using the Java Validation API (JSR 303). Hibernate Validator. is the reference implementation. | |||||
FOP / camel-fop
| Renders the message into different output formats using Formatting Objects Processor (FOP), which is driven by XSL formatting objects (XSL-FO). | |||||
MSV / camel-msv
| 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
| 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 |
FOP / camel-fop
...
fop:outputFormat[?<options>]
...
Renders the message into different output formats using Formatting Objects Processor (FOP)
MSV / camel-msv
...
msv:someLocalOrRemoteResource[?<options>]
...
Validates the payload of a message using the MSV Library.
RNC / camel-jing
...
rnc:/relativeOrAbsoluteUri[?<options>]
...
Validates the payload of a message using RelaxNG Compact Syntax.
RNG / camel-jing
...
rng:/relativeOrAbsoluteUri[?<options>]
...
Validates the payload of a message using RelaxNG.
StAX / camel-stax
...
stax:(contentHandlerClassName|#myHandler)
...
Process messages through a Simple API for XML (SAX) ContentHandler.
XQuery / camel-saxon
...
xquery:someXQueryResource
...
Generates a response using an XQuery template.
XSLT / camel-core
...
xslt:templateName[?<options>]
...
Generates a response using a Extensible Stylesheet Language Transformations (XSLT) template.
Validation / camel-core
...
validation:someLocalOrRemoteResource[?<options>]
...
Validates the payload of a message using XML Schema and JAXP Validation.
Web Services and Remoting
...
Component / ArtifactId / URI
...
Description
CXF / camel-cxf
...
cxf:<bean:cxfEndpoint|//someAddress>[?<options>]
...
Working with Apache CXF for web services integration.
CXF Bean / camel-cxf
...
cxfbean:serviceBeanRef[?<options>]
...
Proceess the exchange using a JAX-WS or JAX-RS annotated bean from the registry. Requires less configuration than the above CXF. Component
CXFRS / camel-cxf
...
cxfrs:<bean:rsEndpoint|//someAddress>[?<options>]
...
Working with Apache CXF for REST services integration.
Restlet / camel-restlet
...
restlet:restletUrl[?<options>]
...
Component for consuming and producing Restful resources using Restlet.
RMI / camel-rmi
...
rmi://hostName[:port][?<options>]
...
Working with remote method invocation (RMI).
Spring Web Services / camel-spring-ws
...
spring-ws:[mapping-type:]someAddress[?<options>]
...
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
...
websocket://hostname[:port][/resourceUri][?<options>]
...
Communicating with Websocket clients.
Platform support
...
Component / ArtifactId / URI
...
Description
APNS / camel-apns
...
apns:<notify|consumer>[?<options>]
...
For sending notifications to Apple iOS devices.
Salesforce / camel-salesforce
...
salesforce:topic[?<options>]
...
To integrate with Salesforce.
SAP NetWeaver / camel-sap-netweaver
...
sap-netweaver:hostName[:port][?<options>]
...
To integrate with SAP NetWeaver Gateway.
Vertx / camel-vertx
...
vertx:eventBusName
...
Working with the vertx event bus.
Special support
...
Component / ArtifactId / URI
...
Description
Avro / camel-avro
...
avro:[transport]:[host]:[port][/messageName][?<options>]
...
Working with Apache Avro for data serialization.
Cache / camel-cache
...
cache://cacheName[?<options>]
...
The cache component facilitates creation of caching endpoints and processors using EHCache as the cache implementation.
Geocoder / camel-geocoder
...
geocoder:<address|latlng:latitude,longitude>[?<options>]
...
Supports looking up geocoders for an address, or reverse lookup geocoders from an address.
...
hazelcast://[type]:cachename[?<options>]
...
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.
RCode / camel-rcode in camel-extra
...
rcode://host[:port]/operation[?options]
...
Uses Rserve to integrate Camel with the statistics environment R.
Weather / camel-weather
...
wweather://name[?<options>]
...
Polls the weather information from Open Weather Map.
Miscellaneous
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
|