Chapter 6. Apache Camel Issues
6.1. Summary of Apache Camel 2.12 to Apache Camel 2.15.1 Migration
Overview
Red Hat JBoss Fuse 6.2.0.redhat-133 uses Apache Camel 2.15.1. Since the last release, Apache Camel has been upgraded from version 2.12 to version 2.15.1. This introduces a few migration issues.
Spring framework
Spring 3.0.x and Spring 3.1.x are no longer supported. You must use Spring 3.2.x.
The camel-infinispan component has been removed from JBoss Fuse 6.2
The
camel-infinispan
component is not included in JBoss Fuse 6.2. It is recommended that you use the camel-jbossdatagrid
component instead. For details on how to install it, see Red Hat JBoss Data Grid and Red Hat JBoss Fuse in the Red Hat JBoss Data Grid Getting Started guide.
You can use any supported combination of JBoss Data Grid in a given container, where the list of certified versions is listed in the JBoss Data Grid support matrix. For some examples of how to use JBoss Data Grid with JBoss Fuse, see https://github.com/jbossdemocentral/jdg-fuse-demos.
New Camel components
The following new Camel components have been added in Apache Camel version 2.13:
- HDFS2 component
- Integration with HDFS using Hadoop 2.x client
- JGroups component
- provides exchange of messages between Camel infrastructure and JGroups clusters.
- Apache Kafka component
- Integration with Apache Kafka
- OptaPlanner component
- To use OptaPlanner for problem solving plans.
- Splunk component
- Enables you to publish and search for events in Splunk.
- Amazon SWF component
- For managing workflows running on Amazon's Simple Workflow Service.
The following new Camel components have been added in Apache Camel version 2.14:
- AHC-WS component
- Provides Websocket based endpoints for a client communicating with external servers over Websocket.
- Atmosphere Websocket component
- Provides Websocket based endpoints for a servlet communicating with external clients over Websocket (as a servlet accepting websocket connections from external clients).
- Box component
- Provides access to all of the Box.com APIs accessible using box-java-sdk-v2.
- Dropbox component
- Enables you to treat Dropbox remote folders as a producer or consumer of messages.
- Metrics component
- Enables you to collect various metrics directly from Camel routes (using Metrics).
- Netty4 component
- A socket communication component, based on the Netty project version 4.
- Netty4-HTTP component
- An extension to Netty4 component to facilitate HTTP transport.
- Olingo2 component
- Uses Apache Olingo version 2.0 APIs to interact with OData 2.0 and 3.0 compliant services.
- Openshift component
- A component for managing your OpenShift applications.
- Google Drive component
- Provides access to the Google Drive file storage service via the Google Drive Web APIs.
- Gora component
- Enables you to work with NoSQL databases using the Apache Gora framework.
- REST component
- Enables you to define REST endpoints using the Rest DSL and plug-in to other Camel components as the REST transport.
- Spark-REST component
- Enables you to define REST endpoints using the Spark REST Java library using the Rest DSL.
- Schematron component
- An XML-based language for validating XML instance documents.
- Swagger component
- Enables users to create API docs for any REST-defined routes and endpoints in a CamelContext file.
The following new Camel components have been added in Apache Camel version 2.15:
- Beanstalk component
- For working with Amazon Beanstalk jobs.
- Cassandra component
- Cassandra CQL3 support.
- Chunk component
- For templating with Chunk engine.
- Docker component
- To communicate with Docker.
- Dozer component
- Now also as a component to convert messages using the Dozer type conversion framework.
- GitHub component
- For integrating with github.
- Google Calendar component
- Provides access to Google Calendar through the Google Calendar Web APIs.
- Google Mail component
- Provides access to Gmail via the Google Mail Web APIs.
- Hipchat component
- To integrate with the Hipchat service.
- PGEvent component
- For sending/receiving notifications in PostgreSQL via the pgjdbc-ng driver.
- JIRA component
- For integrating with JIRA issue tracker.
- Kura component
- For deploying Camel OSGi routes into Eclipse Kura M2M container.
- SCR component
- For using Camel with SCR (OSGi declarative services) on OSGi containers such as Apache Karaf.
- Spring Boot component
- For using Camel with Spring Boot.
- Test-Spring40 component
- For testing with Spring 4.0.x.
camel-test-spring
is for Spring 4.1.x onwards. - Scheduler component
- For timer based scheduler using a scheduled thread pool and with more functionality.
New languages
The following new expression languages have been added in Apache Camel version 2.13:
- JSonPath
- A language syntax (similar to XPath) for extracting parts of JSon messages.
The following new expression languages have been added in Apache Camel version 2.14:
- XMLTokenizer
- A truly XML-aware tokenizer that can be used with the Splitter as the conventional Tokenizer to efficiently and effectively tokenize XML documents.
New DSL
The following new DSL commands have been added in Apache Camel version 2.15:
removeProperties
- A DSL command to remove exchange properties.
New Maven archetypes
The following new Apache Camel Maven archetypes have been added in Apache Camel versions 2.13, 2.14, and 2.15:
camel-archetype-cxf-code-first-blueprint
camel-archetype-cxf-contract-first-blueprint