This Confluence has been LDAP enabled, if you are an ASF Committer, please use your LDAP Credentials to login. Any problems file an INFRA jira ticket please.

Child pages
  • Camel 2.16.0 Release

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


  • The dumpRoutesAsXml operation now preserve property placeholder used in the route models. 
  • Using setFaultBody / setFaultHeader behaves similar to setBody / setHeader to preserve existing headers/attachments by setting on existing IN or OUT message.
  • If using concurrent consumer on JMS endpoints for request/reply over JMS then you must use the new replyToConcurrentConsumers, replyToMaxConcurrentConsumers options to configure the values. 
  • When the Aggregator2 is forced completed the exchange property Exchange.AGGREGATED_COMPLETED_BY value has been changed from "forceCompletion" to "force" so its named like the other completion triggers.
  • Removed unsupported modules camel-web and camel-web-standalone.
  • Removed unsupported camel:dot functionality from camel:run plugin.
  • Removed unsupported camel-archetype-scala-component from maven archetypes.
  • The Maven coordinate for linkedin and olingo2 components changed to be aligned like all the others having groupId as just org.apache.camel.
  • If using MongoDB component, the option invokeGetLastError doesn't exist anymore. The option invokeGetLastError instructs the MongoDB Java driver to invoke getLastError() after every call. In the 3.0.0 MongoDB driver implementation, the getLastError() method in WriteResult has been removed. So, if needed, use an acknowledged WriteConcern when executing the write operation and then verify the correctness of the operation with the method wasAcknowledged() of WriteResult.
  • The Jing component now uses jing as schema name in uris, instead of rng or rnc. Those names has been removed.
  • Swagger module now supports getting api-docs from multiple camel contexts in the JVM. The entry point at /api-docs now lists the contexts detected, and you need to append the context id in the path, eg /api-docs/myCamel
  • If using <contextScan> with Spring or Blueprint to filter RouteBuilder classes, then Camel will now by default only look for singleton beans. You can turn on the old behavior to include prototype scoped with the new option 
  • camel-vertx has been upgraded to vertx 3.0 which requires Java 8 at runtime.
  • camel-cdi is now using CDI 1.1 api - support for 1.0 has been dropped.
  • Content Enricher with enrich and pollEnrich now supports dynamic endpoint uris computed using an Expression that allows to use values from the current Exchange so you for example can poll a file which name is computed from data from the Exchange etc. This change breaks the XML DSL a little bit and there is an easy migration effort. The Java DSL stays backwards compatible.
  • WireTap now supports dynamic endpoint uris computed using an Expression that allows to use values from the current Exchange so you for example can tap to endpoints based on the content from the Exchange etc. This change breaks the XML DSL a little bit and there is an easy migration effort. The Java DSL stays backwards compatible.
  • Support for CXF 2.7 is dropped.
  • camel-jetty8 is being considered deprecated and we would like to drop this in a nearby future release as Jetty 8.x is EOL. 
  • If you have explicit configured the JMX statistics level to All then that option is now called Default. 
  • The HTTP based consumers no longer include Camel headers in the responses by default (they already did this for the producers to not include Camel headers when calling a HTTP service).
  • Bindy requires to be configured using class names instead of package names, as it now supports having multiple model classes in the same java packages now.
  • Using CamelProxy now binds the method parameters to the message body/header using Camel annotations to define the binding rules. If no annotations is defined the the parameter is assumed the message body. You can turn this off to have the old behavior.
  • SJMS component has been aligned to bind between Camel Message and JMS Message in the same way as JMS component does that, in the process a few APIs and behavior has been changed.
  • DefaultExchangeHolder now only keep primitive / String type headers / exchange properties (like JMS component) and filter out other types such as java instances (caught exception on exchange property is kept as well).
  • The Scala based Swagger (camel-swagger) is deprecated in favor of the new camel-swagger-java component.
  • The camel-ruby feature has been removed, use camel-script-jruby instead.
  • The camel-jetty component is upgraded to Jetty 9, use camel-jetty8 if you need to use Jetty 8.
  • camel-jetty8 is deprecated as Jetty 8 is EOL.