Camel 1.4.0 release
New and NoteworthyWelcome to the 1.4.0 release which includes 261 new features, improvements and bug fixes such as...
New Enterprise Integration Patterns
New Components
New DSL
New Data Formats
New Languages
New Examples
API breakingsPotentially there can be an API breaking when upgrading from Camel 1.3 or older. We are sorry for this and will try to refrain from such API breakings in the future Camel 1.x releases. An API overhaul is scheduled for Camel 2.0. Known Issues
Important changes to consider when upgradingCamelTemplate marked as @deprecatedCamelTemplate has been marked as @deprecated and you should use ProducerTemplate instead. ProducerTemplate camelTemplate = camelContext.createProducerTemplate(); After usage of the template, you must call stop() to let it release any resources obtained. See this FAQ entry. Bean component minor changeBean component sets a reference to the bean that is being invoked as a property on the Exchange. This property has change its key from "CamelBean" to "org.apache.camel.bean.BeanHolder" and the type is now a BeanHolder. Unit test kitsThe unit test kits camel-core-tests.jar and camel-spring-tests.jar is no longer distributed with the binary distribution. These jars can be downloaded from maven repositories. JMXIn Camel 1.4 the Camel JMX agent has been enabled by default. To disable it, as the default in previous versions, you have to explicitly disable it. See the Camel JMX documentation for details. Default behavior of intercept() changedIn Camel 1.4 the DSL for intercept() has changed its default behavior to proceed by default. In Camel 1.3 you had to do this: intercept().log("log:orders").proceed(); from("direct:order").to("seda:verifyOrder"); ... In Camel 1.4 the proceed is default: intercept().log("log:orders"); from("direct:order").to("seda:verifyOrder"); ... And in Camel 1.3 stop was default: intercept(header("user").isEqualTo("test")).log("log:test"); from("direct:order").to("seda:verifyOrder"); ... In Camel 1.4 you have to explicit state the stop: intercept(header("user").isEqualTo("test")).log("log:test").stop(); from("direct:order").to("seda:verifyOrder"); ... In the last two examples we want to filter out all orders by a test user. In Camel 1.4 we need to use the stop() to stop the intercept chain from proceeding. URI validationCamel is now more strict when it comes to validation of URI configuration. If a parameter name couldn't be resolved Camel will throw an Exception. In this regard the File component you must change the delay parameters to have the consumer. prefix. delay should be consumer.delay. DeadLetterChannelDeadLetterChannel is now disabled if in transacted mode. Use the new transaction error handler instread, see Transactional Client. Getting the DistributionsBinary Distributions
Source Distributions
Getting the Binaries using Maven 2To 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>1.4.0</version> </dependency> SVN Tag Checkout
svn co http://svn.apache.org/repos/asf/activemq/camel/tags/camel-1.4.0
ChangelogFor a more detailed view of new features and bug fixes, see: |
