Child pages
  • Camel 2.21.0 Release

Versions Compared


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


  • Upgraded to JAXB 2.3.0 which is more JDK9 compliant.
  • Added better support for javax.jms.StreamMessage types in JMS component.
  • Optimised JMS to support ActiveMQ Artemis large messages so you can send and receive big messages such as GB's in size. There is an example demonstrating this in camel-example-artemis-large-messages.
  • Added support for route coverage reports which allows 3rd party tooling via SPI to visualise route coverage to Camel developers.
  • Added route-coverage goal to the Camel Maven Plugin so you can report route coverage from Maven command line.
  • Added support for doing manual commits via Java code when using Kafka consumer.
  • Vendor extensions in the swagger generated API docs is now disabled turned off, when using Rest DSL (not all 3rd party API gateways/tooling support vendor extensions). You can turn this back-on via the apiVendorExtension option.
  • The SFTP consumer now also supports the useList option which can be used to download a single known file without use LIST operation on the FTP server (which can be slow if the FTP server has many files in the LIST results)
  • Camel JSON with camel-jackson will now automatic use shared ObjectMapper instance if there is only one instance in the Registry. For example users with Spring Boot then allows Camel to easily use the default mapper from Spring Boot.
  • Added ExtendedStartupListener that allows a callback just after the CamelContext has been fully started.
  • You can now specify examples in the Rest DSL that are included in the generated Swagger api-doc via camel-swagger-java.
  • Improved file/ftp consumer to use current thread to poll, instead of a scheduled background task, when using pollEnrich (Content Enricher).
  • Direct component now blocks by default if sending to a consumer which is not yet ready, which may happen during startup (little window of opportunity). This avoids DirectConsumerNotAvailableException being thrown during startup etc.
  • The FTP component can now log progress (turn on transferLoggingLevel) when perfomring download/upload and other operations. You can also find this information for the consumer in JMX. 
  • Added support for resuming downloads to FTP component. For example if you download big files and has connection problems with the FTP server. Then later when the connectivity works again, Camel can resume download the in-progress file.
  • The Jetty and SERVLET consumers will now return HTTP Status 405 (method not allowed) for requests that would have been processed by another HTTP request method, for example calling REST services with the wrong method. Beforehand a 404 error code was always regardless.
  • Reworked the FileIdempotentRepository so the internal in-memory cache is only used for quick lookup of the most frequent file names, and lookup from disk as well. See more details in the class javadoc of the file.
  • The SQL Stored Procedure component now supports INOUT parameters.

The following issues has been fixed