Versions Compared

Key

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

...

Welcome to the x.y.z release which approx XXX issues resolved (new features, improvements and bug fixes such as...)

  • Support for Java 9 as a technical preview. Official support for Java 9 will be forthcoming in the following releases. (source code builds and tests on a Java 9 JVM). 
  • Many internal optimisations in the Camel routing engine, such as reducing thread contention when updating JMX statistics, reducing internal state objects to claim less memory, and reducing the number of allocated objects to reduce overhead on GC etc, and much more. 
  • Camel Spring Boot now supports referring to bean's (lookup in Spring Boot) by their id names in the configuration files (application.properties|yaml file) when you configure any of the Camel starter components.
  • Camel Spring Boot now also supports using Spring (auto) configuration to configure CamelContext when using Spring XML files with <camelContext>. 
  • Worked to make Apache Camel more ready and compatible with the upcoming Spring Boot 2 and Spring Framework 5. Officially support for these is expected in Camel 2.21 release.
  • The JMS component now includes JMS 2.0 functionality to use shared (durable and non-durable) topic.
  • The Camel Maven Plugin can now validate for duplicate route ids in your source code.
  • Splitted Twitter component into 4, now directmessage, seach, streaming and timeline has its own endpoint and scheme. See documentation for more details
  • Introduced HeadersMapFactory SPI which allows to plugin different implementations, or to use case sensitive maps that are faster than the default.
  • Allow Kafka consumer to break on first unhandled exception, sync the offset from last known good, and then re-connect after one timeout cycle, to restart consuming again. This avoids loosing the failed message, but retry it again on either this consumer, or another consume which was re-balanced by Kafka. This requires to be turned on with the new option breakOnFirstError which can be set on both component or endpoint level.
  • Starting and stoping the CamelContext when used with Spring framework (SpringCamelContext) was revised to ensure that the Camel context is started last - when all resources should be available, and stopped first - while all resources are still available
  • The SQL Stored Procedure now supports specifying custom types as FQN classnames and scale in numeric values.
  • Using Camel with Spring now supports calling Bean by their FQN name and let Spring instantiate the bean using auto-wired constructor's as opposed to only supporting a no-arg constructor. 
  • Using Camel with Spring Boot can now easily filter Java RouteBuilder routes via ANT-path pattern style to either include or exclude class names, which can be configured using Spring configuration properties.
  • The Wire Tap EIP can now be configured to use static endpoint uri instead of being dynamic evaluated via the Simple language. 
  • The Wire Tap EIP will now complete any inflight wire tapped exchanges while shutting down to give them time to complete graceful.
  • The JSonPath can now split and write each row as a string value (JSon format) instead of using a Map/POJO type with the new writeAsString option.
  • The POJO Consuming Consume annotation on POJO classes now support a predicate (using simple language) to filter the message. See the camel-example-spring-boot-pojo for more.
  • The internal JSon parser that is used by camel-catalog and runtime camel-catalog (from camel-core) now embeds a simple-json v2 parser which means it can parse any kind of json formatted document (before it was confined to its own dense format)

...