Apache Camel 2.22.0 release, what's new04 Jul 2018
The Camel community released the new Apache Camel 2.22.0. This is a big release that arrives near to the 2.21.0 one, for a specific reason: supporting Spring Boot 2. Here is a list of the most important features:
Spring Boot Support
Camel switched from Spring Boot v1 to v2 and therefore v1 is no longer supported.
Upgraded to Spring Framework 5. Actually Camel is able to work with Spring 4.3.x as well, but going forward Spring 5.x will be the minimum Spring version in future releases.
Upgraded to Karaf 4.2. Camel is able to work with Karaf 4.1.x too, but we suggest to switch to Karaf 4.2.0
Rest DSL client request validation
Rest DSL now supports client request validation to validate that Content-Type/Accept headers is possible for the rest service.
Optimised using toD DSL
Allows to reuse endpoints and producers for components where its possible. For example HTTP based components will now reuse producer (http clients) with dynamic uris sending to the same host. See more details in the toD documentation.
- camel-as2 - Component used for transferring data secure and reliable over the internet using the AS2 protocol
- camel-google-mail-stream - Component used for consuming email from your Gmail account in streaming mode.
- camel-mybatis - Now has a mybatis-bean component that supports using MyBatis annotations on POJO beans to specify the SQL queries and mappings.
- camel-micrometer - Component created for gathering metrics.
- camel-rxjava2 - Component for supporting RxJava2 in Camel.
- camel-service - Represents an endpoint which only becomes active when the CamelClusterView has the leadership.
- camel-testcontainers - Component for testing purpose through containers.
- camel-web3j - The web3j component uses the Web3j client API and allows you to add/read nodes to/from a web3j compliant content repositories.
Important change to consider
- Unit testing Camel with Spring Boot and extending the base classes CamelTestSupport or CamelSpringTestSupport is now throwing an exception as this has never been intended/support. Instead use the CamelSpringBootRunner JUnit runner, and do not extend a base class.
- The file consumer has changed to use readLock=none as default instead of readLock=markerFile. Documentation already indicated that readLock=none was the default.
- The SEDA component now has a default queue size of 1000 instead of unlimited.
For more informations about the upcoming release you can read the Camel 2.22.0 Release page. We hope you’ll enjoy this release and obviously feedback are more than welcome, like Contributions. Feel free to test it and report bugs or enhancements on JIRA