Child pages
  • Camel 2.11.0 Release

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
h1. Camel 2.11.0 release (currently in progress)


h2. New and Noteworthy

Welcome to the 2.11.0 release with approximately XXX issues resolved - including new features, improvements, and bug fixes, such as: 

* Added support for SOAP 1.2 in [SOAP] data format.
* [Cache] operation for add/update now supports expiry headers to control time to live/idle/eternal.
* Added {{allowNullBody}} option to [JMS] to configure whether sending messages with no body is allowed.
* Added {{connectOnStartup}} option to [HDFS] to allow to connect on demand, to avoid having Hadoop block for long time connecting to the HDFS cluster, as it has a hardcoded 15 minute retry mechanism. 
* Added support for daily and weekly trends to [Twitter] component.
* The [Camel Maven Archetypes] now generates projects without any license headers.
* Added 'rejectOld' option to the [Resequencer] to prevent out of order messages from being delivered after capacity/timeout events occur
* Further optimized [XPath] under concurrent load, and as well ensured resources are cleaned up eagerly
* Added options {{allowNullBody}} and {{readLockMinLength}} to the [File|File2] and [FTP|FTP2] components.
* Made {{changed}} read lock strategy on [FTP|FTP2] go faster (eg when the FTP server has a lot of files in the directory) if you enable the {{fastExistsCheck=true}} option as well. Notice that some FTP server may not support this.
* [HL7] moves the HAPI 2.0 and supports Parser instance into unmarshal and "Terser" language and expression to be able to extract fields from a parsed message. [HL7] also upgraded to now use Apache Mina 2.x.
* Add an option {{HttpMethodRestrict}} to restrict HTTP method in [Jetty] and [Servlet]
* Add support for selection of [direct-vm] consumers by using ant-like path expression.
* The [POJO Producing], and [POJO Consuming] with @Consume, @Produce, @EndpointInject now supports a new {{property} attribute to get the endpoint configuration from a bean property (eg using a getter method); this allows you to configure this on the bean using conventional bean configuration.
* Testing with {{camel-test-blueprint}} on Windows no longer tries to cleanup after testing taking up 5 seconds and logging WARNs.
* The [File|File2], and [FTP|FTP2] components now support {{fileExist=Move}} option to move any existing files before writing a file.
* Added option {{loadStatisticsEnabled}} on [Camel JMX] to allow to disable load statistics if not needed (avoids a background thread being in use, to calculate the load stats).
* Enabled "lazy connections" for [XMPP] providers via the {{testConnectionOnStartup}} option
* Added a connection monitor to detect and fix dropped [XMPP] consumer connections at configurable {{connectionPollDelay}} intervals
* Added an ExchangeBuilder to build the exchange in a fluent way.

h3. Fixed issues

* Fixed [RoutePolicy] used from Spring XML with {{routePolicyRef}} may not invoke all callbacks on the policy.
* Fixed [Mina] consumer to force disconnect upon timeout when doing request/reply, as late replies may cause side effects otherwise.
* Fixed [simple] language with empty quoted literals in predicates, so you can compare against empty strings.
* Fixed [SOAP] data format to set SOAP 1.1 namespace when marhsalling faults.
* Fixed [SEDA] producer to send to the right BlockingQueue being attached on the [SEDA] endpoint so that the sent messages don't get lost.
* Fixed using {{sendEmptyMessageWhenIdle=true}} on a batch consumer such as [File|File2] now working with [Aggregate|Aggregator2] EIP when using {{completionFromBatchConsumer}}
* Fixed {{MockEndpoint.expectedBodiesReceivedInAnyOrder}} to allow asserting on multiple arrival of the same/equal bodies.
* Fixed [MyBatis] to demarcate the running transactions properly while reading/writing from/to database.
* Fixed [Jetty], [HTTP], [HTTP4], and [AHC] http components not working in bridge mode if content path have spaces
* Fixed the [CXF] fallback convertor issue which camel will unregister it when the converter return null.
* Fixed the issue that [File2] endpoints on windows without volume name in the path url. 
* Fixed the issue of unmarshaling pgp messages encrypted with ElGamal.
* Fixed random [Load Balancer] to be even spread (before was a little less likely to pick the 1st)
* Fixed [Timer] to not fire during starting [CamelContext]
* Fixed [XMLSecurity DataFormat] to enable retrieval of password-protected private keys for asymmetric decryption

h3. New [Enterprise Integration Patterns]

h3. New Camel Karaf Command

h3. New [Components]

* {{[camel-cmis|cmis]}} - for integration of CMIS compliant content repositories
* {{[camel-couchdb|CouchDB]}} - for integration with [Apache CouchDB|]
* {{[camel-elasticsearch|ElasticSearch]}} - for [ElasticSearch|] integration
* {{[camel-sjms|sjms]}} - for "Springless" JMS integration
* {{[camel-neo4j|neo4j]}} - for talking to neo4j server from Camel.

h3. DSL Changes

* Added LoggingErrorHandler fluent builder to Scala DSL.

h3. New Annotations

h3. New [Data Formats|Data Format]

h3. New [Languages]

* [VTD-XML] - for fast and efficient XPath evaluation/splitting using the VTD-XML Library. {{camel-vtdxml}} hosted at [Camel Extra|]

h3. New [Examples]

h3. New [Tutorials]

h2. API changes/breaking

* [HL7] upgraded to now use Apache Mina 2.x.
* Renamed {{org.apache.camel.component.hbase.HBaseContats}} to {{org.apache.camel.component.hbase.HBaseConstants}}
* Added getter/setter methods for loadStatisticsEnabled on {{org.apache.camel.spi.ManagementStrategy}}

h2. Internal/Non API refactorings that may affect users

* The [Camel Test Kit|Testing] provides a default [Properties] component out of the box; which mean using {{addComponent("properties", ...)}} is no longer needed; instead get the component using {{getComponent("properties")}} and configure the component instead.

h2. Known Issues

* The [Tracer] may not output all details for some situations, such as when using {{onCompletion}} or {{intercept}}, etc.
* The project cannot fully build the site using Maven (e.g. running {{"mvn site"}}). There is no plan to fix this, as the project does not use maven site.
* JBoss 7 may log a WARNing when running Camel as a WAR file.

h2. Dependency Upgrades

* Axiom 1.2.10 to 1.2.12
* BeanIO 2.0.0 to 2.0.1
* ConcurrentLinkedHashMap 1.2 to 1.3.1
* Ehcache bundle 2.5.1_1 to 2.5.2_1
* HTTP Client 4.1.3 to 4.2.1
* Jettison 1.3.1 to 1.3.2
* Lucene 3.6.0 to 3.6.1
* Netty 3.5.1 to 3.5.5
* Ognl bundle 3.0.4_1 to 3.0.5_1
* Restlet 2.0.14 to 2.0.15
* Saxon to
* Spring Framework 3.1.1 to 3.1.2
* Spring Integration 2.1.2 to 2.1.3
* SSHD 0.6.0 to 0.7.0
* Woodstox 4.1.2 to 4.1.3

h2. Important changes to consider when upgrading

* {{camel-mina2}} now uses {{OrderedThreadPoolExecutor}} by default. There is a new option {{orderedThreadPoolExecutor}} you can configure it to {{false}} to revert back to unordered if needed. Mina that using SSL etc. requires ordered.
* The default value of {{delay}} option on [Timer] has been changed from {{0}} to {{1000}}

h2. Notice

* Maven 3.0.2 or better is required to build the [Source]
* If you want to deploy Apache Camel 2.11.0 into Apache Karaf, we highly recommend to use the '' configuration, which is part of Apache Karaf 2.2.5 onwards. For example {{camel-cxf}}, {{camel-mail}}, and {{camel-spring-ws}} requires this to be installable; as well other features may as well.

h2. Getting the Distributions

h3. Binary Distributions

|| Description || Download Link || PGP Signature file of download ||
| Windows Distribution | [|] | [|] |
| Unix/Linux/Cygwin Distribution | [apache-camel-2.11.0.tar.gz|] | [apache-camel-2.11.0.tar.gz.asc|] |


h3. Source Distributions

|| Description || Download Link || PGP Signature file of download ||
| Source Distribution | [|] | [|] |