Camel 2.7.0 release (currently in progress)
New and Noteworthy
Welcome to the 2.7.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)
Dependency changes
The Camel 2.7.0 release has a number of major dependency changes:
- JDK 1.6+ is now required
- Spring 3.x+ is now required if using Spring
- slf4j
is used as logger instead of commons logging
In other words support for JDK 1.5 and Spring 2.x has been dropped.
- Switched to use slf4j
as the logger instead of commons logging.
- Camel now checks state of
Service
during starting/stopping the Lifecycle of theService
. This avoids double starting/stopping in case the service was already in the desired state. - Added support for MDC logging with Camel
- JMS consumer now eager checks if Camel is shutting down and signals that to its
DefaultMessageListenerContainer
which avoids trying to re-connect/failover during shutdown. - Introduced option to automatic Mock endpoints during testing. This makes testing without having to add Mock endpoints in your routes a breeze. See more details at Mock component documentation.
- Added
assertPeriod
option to Mock endpoint, which is a period im milliseconds, that the Mock will pause and then re-assert itself to ensure the assertion is still valid. This can be used as a threshold when testing with expectations that exactly a given number of messages should arrive on the Mock endpoint. - Added
arrives
DSL to Mock endpoint to allow you to setup expectations about timespan between messages arriving on the Mock endpoint. See more details at Mock component documentation. - HTTP4 is upgraded to use Apache HttpClient 4.1
- Fixed an issue with File consumer having absolute starting directory and using absolute paths in the
move
option as well - Fixed concurrent append to the same file in the File producer
- Fixed issue with restarting Quartz causing a failure due trigger name already exists issue for stateful jobs.
- Its now possible to use multiple QuartzScheduler's when deploying multiple Camel applications in the same JVM classloader.
- Quartz update checker is now always disabled, see more details here
- Fixed potential issue installing
camel-ftp
feature in Apache ServiceMix - New JdbcMessageIdRepository for the idempotent consumer EIP in SQL
- Relaxed how aggressive Camel was registering services as MBeans in JMX. Now Camel will by default only registeres MBeans when starting CamelContext or starting new routes. This avoids registering too many MBeans if using dynamic EIP patterns such as Recipient List using different endpoint urls, causing new endpoints and its associated services to be registered in JMX. This would keep growing over time and consume memory as well. You can use the
registerAlways
orregisterNewRoutes
options onManagementAgent
to control this behavior. See Camel JMX for more details.
New Enterprise Integration Patterns
- None
New Components
- None
New DSL
- None
New Annotations
- None
New Data Formats
- None
New Languages
- None
New Examples
camel-example-osgi-rmi
New Tutorials
- None
API breaking
FATAL
has been removed fromorg.apache.camel.LoggingLevel
. UseERROR
instead.org.apache.camel.processor.Logger
has been renamed toorg.apache.camel.processor.CamelLogger
, and it now uses slf4jas the logger.
Known Issues
- The Tracer may not output all details for some situations such as when using
onCompletion
orintercept
etc. - Not all Examples have ANT build.xml files to run the example using ANT.
- Project cannot be fully build using Maven 3.0
camel-script
which usesScriptEngineManager
from the JDK, cannot load script engines from packages outside the JDK.- Stopping a route after using
adviceWith
maybe cause issues with error handlers, see CAMEL-3534
Important changes to consider when upgrading
- Java 1.6 or better is required
- Spring 3.0.x or better is required, when using Spring
- Apache CXF 2.3.2 or better is required, when using CXF
- Switched to use slf4j
as the logger instead of commons logging. That means you may have to included
slf4j-log4j12
as dependency if you are using log4j.
See documentation at slf4jfor more details.
- If you have developed custom Camel Components and your
Endpoint
class extendsDefaultEndpoint
then its advised to use thedoStart
anddoStop
instead ofstart
andstop
. - camel-cxf endpoint will copy the attachments between the camel message and cxf message when it works in POJO data format, please access the attachment objects from the camel message body.
Getting the Distributions
Binary Distributions
Description |
Download Link |
PGP Signature file of download |
---|---|---|
Windows Distribution |
||
Unix/Linux/Cygwin Distribution |
The above URLs use redirection
The above URLs use the Apache Mirror system to redirect you to a suitable mirror for your download. Some users have experienced issues with some versions of browsers (e.g. some Safari browsers). If the download doesn't seem to work for you from the above URL then try using FireFox
Source Distributions
Description |
Download Link |
PGP Signature file of download |
---|---|---|
Source for Windows |
Source for Unix/Linux/Cygwin |
Getting the Binaries using Maven 2
To use this release in your maven project, the proper dependency configuration that you should use in your Maven POM is:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-core</artifactId> <version>2.7.0</version> </dependency>
SVN Tag Checkout
svn co http://svn.apache.org/repos/asf/camel/tags/camel-2.7.0
Changelog
For a more detailed view of new features and bug fixes, see the: