Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 4B2F6200ACB for ; Sun, 29 May 2016 11:20:57 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 49D90160A07; Sun, 29 May 2016 09:20:57 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 9D4AF1609AD for ; Sun, 29 May 2016 11:20:55 +0200 (CEST) Received: (qmail 76484 invoked by uid 500); 29 May 2016 09:20:54 -0000 Mailing-List: contact commits-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@camel.apache.org Delivered-To: mailing list commits@camel.apache.org Received: (qmail 76475 invoked by uid 99); 29 May 2016 09:20:54 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 29 May 2016 09:20:54 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 5F373C09B1 for ; Sun, 29 May 2016 09:20:54 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.426 X-Spam-Level: X-Spam-Status: No, score=-0.426 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id zo-8GsLLdO5n for ; Sun, 29 May 2016 09:20:51 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 48BE15F243 for ; Sun, 29 May 2016 09:20:50 +0000 (UTC) Received: from svn01-us-west.apache.org (svn.apache.org [10.41.0.6]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id ED423E048C for ; Sun, 29 May 2016 09:20:48 +0000 (UTC) Received: from svn01-us-west.apache.org (localhost [127.0.0.1]) by svn01-us-west.apache.org (ASF Mail Server at svn01-us-west.apache.org) with ESMTP id 18A5A3A1673 for ; Sun, 29 May 2016 09:20:48 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r989485 [3/4] - in /websites/production/camel/content: book-component-appendix.html book-in-one-page.html cache/main.pageCache camel-2180-release.html jms.html Date: Sun, 29 May 2016 09:20:47 -0000 To: commits@camel.apache.org From: buildbot@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20160529092048.18A5A3A1673@svn01-us-west.apache.org> archived-at: Sun, 29 May 2016 09:20:57 -0000 Modified: websites/production/camel/content/camel-2180-release.html ============================================================================== --- websites/production/camel/content/camel-2180-release.html (original) +++ websites/production/camel/content/camel-2180-release.html Sun May 29 09:20:47 2016 @@ -85,7 +85,7 @@ -

Camel 2.18.0 release (currently in progress)

 

New and Noteworthy

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

  • Added Hystrix EIP as EIP pattern that uses native Hystrix as the Circuit Breaker implementation. This requires having camel-hsytrix on the classpath.
  • Added Service Call EIP as EIP pattern that allows to call a remote service in a distributed system, where the service is looked up from a service registry of some sorts, such as kubernetes, consul, etcd, zookeeper etc.
  • Improved the Bean component to better match method parameter types when using Simple language as parameter values.
  • Added BindyConverter that allows to implement custom data converters for Bindy
  • The access in the Rest DSL has been deprecated and no longer in use - its not part of swagger specification anymore.
  • Camel-NATS now uses JNATS client instead of the deprecated Java_nats one.
  • During startup of CamelContext the s ervices that are used as part of routes are now deferred being started to the end of the startup process. Some IoC frameworks like Spring can otherwise causes a circular dependency issue if services are started too early. A side effect is that if service startup failures happen when being started later, they are now wrapped in the FailedToStartupRouteException to better pin point which route thas the problem.
  • Improved the startup sequence of Spring Java Config to be similar to Spring Boot that helps prevent Spring initialization errors about circular dependencies issues.
  • Added PATCH to Rest DSL
  • Added "starts with" and "ends with" operator to the Simple language.
  • Added BeanIOSplitter to Bean IO that can be used with the Splitter EIP to split big payloads in streaming mode without reading the entire content into memory.
  • Some of the AWS components allows to specify ARN in the endpoint configuration. 
  • The create operation in Zookeeper now creates sub paths if missing.
  • Added support for async mode for SERVLET component to leverage Asynchronous Servlet from the Servlet 3.0 spec.
  • Bean component and Bean Language validates method name must be a valid according to java identifier rules, and also if parameter syntax has an ending parenthesis.
  • You can now use @RunWith(CamelSpringBootJUnit4ClassRunner.class) to test Camel Spring Boot applications and use the Camel test annotations from Spring Testing such as @MockEndpoints.
  • To turn on logging exhausted message body with the message history you can configure this easily on the CamelContext level with setLogExhaustedMessageBody
  • Camel-Infinispan now supports Aggregation Repository: InfinispanLocalAggregationRepository and InfinispanRemoteAggregationRepository
  • The SQL Component and ElSql now supports outputType=StreamList to use an iterator for the output of the SQL query that allows to process the data in a streaming fashion such as with the Splitter EIP to process the data row by row, and load data from the datab ase as needed.
  • JPA now includes a JpaPollingConsumer implementation that better supports Content Enricher using pollEnrich to do a on-demand poll that returns either none, one or a list of entities as the result. 
  • Calling Bean with method parameters defined using Simple parameters, now avoids an intermediate conversion of the parameters to a String value. This ensures the passed in values when calling the bean method is using the parameter type as-is from Simple.
  • Camel CDI now supports importing Camel XML configuration files
  • Camel CDI does not deploy an empty Camel context bean anymore if not route builder beans no r Camel beans are deployed
  • Camel CDI adds the @Named qualifier to Camel route management events so that it's possible to observe these events for a specific route with an explicit id
  • Camel BeanIO now supports the possibility to use a custom BeanReaderErrorHandler implementation in his configuration
  • Camel Kubernetes now supports Kubernetes ConfigMap feature
  • The Tokenizer and XMLTokenizer language now supports using Simple expressions as the token / xml tag names so they can be dynamic values.
  • Added filterDirectory and filterFile options to File2 so filtering can be done using < a shape="rect" href="simple.html">Simple language or predicates. 
  • Optimize Camel to only enable AllowUseOriginalMessage if in use by error handler or OnCompletion. End user who manually access the original message using the Java API must configure AllowUseOriginalMessage=true.
  • Camel-AHC now support a connectionClose parameter to allow explicitly adding a Connection Close header to HTTP request
  • Camel-HTTP now support a connectionClose parameter to allow explicitly adding a Connection Close header to HTTP request
  • Camel-HTTP4 now support a connectionClose parameter to allow explicitly adding a Connection Close header to HTTP request
  • Camel-Jetty now support a connectionClose parameter to allow explicitly adding a Connection Close header t o HTTP request
  • Bindy allows to plugin custom formatters for mapping to custom types.

Fixed these issues:

  • Fixed Bean component to avoid ambiguous error for classes that extends generic interface and calling which could lead to falsely duplicate methods (due Java type erasure inserts bridge methods) 
  • Fixed splitting using tarfile could cause OOME if splitting big files which was mistakenly loaded into memory. Now we work on the tar stream directly.
  • Fixed Netty HTTP and Netty4 HTTP issue when not specifying a port number then port 80 would not be used but an error about port -1 is not allowed.
  • Fixed Swagger Java when using property placeholders in Rest DSL could cause invalid parameters to be included that was from the placeholder.
  • The threads EIP now lets Error handling in Camel perform redeliveries if the thread pool would otherwise reject accepting the task. This allows the error handler to perform redeliveries to attempt to put the task on the thread pool queue, or eventually move the message to a dead letter queue etc.
  • Fixed Rest DSL adding empty header if specifying a non required query parameter that has no default value assigned.
  • Fixed doWhile loop which could potentially loop forever.
  • Fixed a NPE in Zookeeper consumer if no zookeeper node path was set
  • Spring-DM for OSGi moved out of camel-spring into a separate camel-spring-dm module.
  • When using continued with onException then dead letter channel endpooint should not be invoked.
  • Fixed Error Handler to not log exceptions when using continued(true) by default.
  • Fixed so using shareUnitOfWork would now also call specialized AggregationStrategy for onTimeout, onCompletion etc.
  • Fixed Jetty consumer incorrectly handle multipart/form data not being mapped as attachments on the Camel Message.
  • Fixed Netty4 HTTP may fail reading the http content from the raw netty stream if the Exchange was routed asynchronously.
  • Fixed Netty4 HTTP leak ByteBuf's on the producer side which was not released in all corner cases before they may be gargage collected. 
  • Fixed Dozer not able to use variables in mapping files when using OSGi.

New Enterprise Integration Patterns

New Components

  • camel-cm-sms - For sending SMS messages using SM SMS Gateway
  • camel-ehcache - For interacting with Ehcache 3 cache
  • camel-flink - Bridges Camel connectors with Apache Flink tasks.
  • camel-ribbon - To use Netflixx Ribbon with the Service Call EIP.
  • camel-servicenow - For cloud management with ServiceNow
  • camel-telegram - For messaging with Telegram
  • camel-zipkin - For tracking Camel message flows/timings using zipkin
  • camel-consul - For integrating your application with Consul

New DSL

  • hystrix - Using Hystrix as circuit breaker. This requires having camel-hsytrix on the classpath.
  • serviceCall - To call a remote service in a distributed system where the service is looked up from a service registry of some sorts.

New Annotations

New Data Formats

New L anguages

New Examples

  • camel-example-cdi-xml: illustrates the use of Camel XML configuration files into a Camel CDI application

New Tutorials

API breaking

Known Issues

Important changes to consider when upgrading

  • Java 1.8 is now required.
  • Karaf 2.4.x is no longer supported. Karaf 4.x is the primary supported OSGi platform.
  • Jetty 8.x is no longer supported and camel-jetty8 has been removed
  • spring 4.0 is no longer supported and camel-test-spring40 has been removed
  • spring 3.x is no longer supported
  • (only spring-dm using spring 3 .2.x as part of camel-spring in osgi/karaf is still in use - but spring-dm is deprecated and we recommend using blueprint)
  • Spring-DM for OSGi moved out of camel-spring into a separate camel-spring-dm module. If using Spring XML with Spring-DM then you need to install camel-spring-dm feature in Karaf/ServiceMix.
  • The deprecated @LazyLoadTypeConverter has been removed from all Camel Test modules
  • camel-gae has been removed (was not working anyway)
  • The access in the Rest DSL has been deprecated and no longer in use - its not part of swagger specification anymore.
  • Removed the deprecated maven archetypes for SOAP WS using CXF with OSGi Blueprint
  • Optimize Camel to only enable AllowUseOriginalMessage if in use by error handler or OnCompletion. End user who manually access the original messa ge using the Java API must configure AllowUseOriginalMessage=true.
  • The FTPS component is now using known hosts file from the user.home/.ssh directory by default. Set the option useUserKnownHostsFile=false to use old behavior.

Getting the Distributions

Binary Distributions

Description

Download Link

PGP Signature file of download

Windows Distribution

apache-camel-x.y.x.zip

apache-camel-x.y.x.zip.asc

Unix/Linux/Cygwin Distribution

apache-camel-x.y.x.tar.gz

apache-camel-x.y.x.tar.gz.asc

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

< /td>

apache-camel-x.y.x-src.zip

apache-camel-x.y.x-src.zip.asc

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:

+

Camel 2.18.0 release (currently in progress)

 

New and Noteworthy

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

  • Added Hystrix EIP as EIP pattern that uses native Hystrix as the Circuit Breaker implementation. This requires having camel-hsytrix on the classpath.
  • Added Service Call EIP as EIP pattern that allows to call a remote service in a distributed system, where the service is looked up from a service registry of some sorts, such as kubernetes, consul, etcd, zookeeper etc.
  • Improved the Bean component to better match method parameter types when using Simple language as parameter values.
  • Added BindyConverter that allows to implement custom data converters for Bindy
  • The access in the Rest DSL has been deprecated and no longer in use - its not part of swagger specification anymore.
  • Camel-NATS now uses JNATS client instead of the deprecated Java_nats one.
  • During startup of CamelContext the s ervices that are used as part of routes are now deferred being started to the end of the startup process. Some IoC frameworks like Spring can otherwise causes a circular dependency issue if services are started too early. A side effect is that if service startup failures happen when being started later, they are now wrapped in the FailedToStartupRouteException to better pin point which route thas the problem.
  • Improved the startup sequence of Spring Java Config to be similar to Spring Boot that helps prevent Spring initialization errors about circular dependencies issues.
  • Added PATCH to Rest DSL
  • Added "starts with" and "ends with" operator to the Simple language.
  • Added BeanIOSplitter to Bean IO that can be used with the Splitter EIP to split big payloads in streaming mode without reading the entire content into memory.
  • Some of the AWS components allows to specify ARN in the endpoint configuration. 
  • The create operation in Zookeeper now creates sub paths if missing.
  • Added support for async mode for SERVLET component to leverage Asynchronous Servlet from the Servlet 3.0 spec.
  • Bean component and Bean Language validates method name must be a valid according to java identifier rules, and also if parameter syntax has an ending parenthesis.
  • You can now use @RunWith(CamelSpringBootJUnit4ClassRunner.class) to test Camel Spring Boot applications and use the Camel test annotations from Spring Testing such as @MockEndpoints.
  • To turn on logging exhausted message body with the message history you can configure this easily on the CamelContext level with setLogExhaustedMessageBody
  • Camel-Infinispan now supports Aggregation Repository: InfinispanLocalAggregationRepository and InfinispanRemoteAggregationRepository
  • The SQL Component and ElSql now supports outputType=StreamList to use an iterator for the output of the SQL query that allows to process the data in a streaming fashion such as with the Splitter EIP to process the data row by row, and load data from the datab ase as needed.
  • JPA now includes a JpaPollingConsumer implementation that better supports Content Enricher using pollEnrich to do a on-demand poll that returns either none, one or a list of entities as the result. 
  • Calling Bean with method parameters defined using Simple parameters, now avoids an intermediate conversion of the parameters to a String value. This ensures the passed in values when calling the bean method is using the parameter type as-is from Simple.
  • Camel CDI now supports importing Camel XML configuration files
  • Camel CDI does not deploy an empty Camel context bean anymore if not route builder beans no r Camel beans are deployed
  • Camel CDI adds the @Named qualifier to Camel route management events so that it's possible to observe these events for a specific route with an explicit id
  • Camel BeanIO now supports the possibility to use a custom BeanReaderErrorHandler implementation in his configuration
  • Camel Kubernetes now supports Kubernetes ConfigMap feature
  • The Tokenizer and XMLTokenizer language now supports using Simple expressions as the token / xml tag names so they can be dynamic values.
  • Added filterDirectory and filterFile options to File2 so filtering can be done using < a shape="rect" href="simple.html">Simple language or predicates. 
  • Optimize Camel to only enable AllowUseOriginalMessage if in use by error handler or OnCompletion. End user who manually access the original message using the Java API must configure AllowUseOriginalMessage=true.
  • Camel-AHC now support a connectionClose parameter to allow explicitly adding a Connection Close header to HTTP request
  • Camel-HTTP now support a connectionClose parameter to allow explicitly adding a Connection Close header to HTTP request
  • Camel-HTTP4 now support a connectionClose parameter to allow explicitly adding a Connection Close header to HTTP request
  • Camel-Jetty now support a connectionClose parameter to allow explicitly adding a Connection Close header t o HTTP request
  • Bindy allows to plugin custom formatters for mapping to custom types.

Fixed these issues:

  • Fixed Bean component to avoid ambiguous error for classes that extends generic interface and calling which could lead to falsely duplicate methods (due Java type erasure inserts bridge methods) 
  • Fixed splitting using tarfile could cause OOME if splitting big files which was mistakenly loaded into memory. Now we work on the tar stream directly.
  • Fixed Netty HTTP and Netty4 HTTP issue when not specifying a port number then port 80 would not be used but an error about port -1 is not allowed.
  • Fixed Swagger Java when using property placeholders in Rest DSL could cause invalid parameters to be included that was from the placeholder.
  • The threads EIP now lets Error handling in Camel perform redeliveries if the thread pool would otherwise reject accepting the task. This allows the error handler to perform redeliveries to attempt to put the task on the thread pool queue, or eventually move the message to a dead letter queue etc.
  • Fixed Rest DSL adding empty header if specifying a non required query parameter that has no default value assigned.
  • Fixed doWhile loop which could potentially loop forever.
  • Fixed a NPE in Zookeeper consumer if no zookeeper node path was set
  • Spring-DM for OSGi moved out of camel-spring into a separate camel-spring-dm module.
  • When using continued with onException then dead letter channel endpooint should not be invoked.
  • Fixed Error Handler to not log exceptions when using continued(true) by default.
  • Fixed so using shareUnitOfWork would now also call specialized AggregationStrategy for onTimeout, onCompletion etc.
  • Fixed Jetty consumer incorrectly handle multipart/form data not being mapped as attachments on the Camel Message.
  • Fixed Netty4 HTTP may fail reading the http content from the raw netty stream if the Exchange was routed asynchronously.
  • Fixed Netty4 HTTP leak ByteBuf's on the producer side which was not released in all corner cases before they may be gargage collected. 
  • Fixed Dozer not able to use variables in mapping files when using OSGi.
  • Fixed a potential dead-lock when doing request/reply over JMS and requests are timing out concurrently and continued routing the exchanges are calling another JMS endpoint that is also doing request/reply which also timeout. 

New Enterprise Integration Patterns

New Components

  • camel-cm-sms - For sending SMS messages using SM SMS Gateway
  • camel-ehcache - For interacting with Ehcache 3 cache
  • camel-flink - Bridges Camel connectors with Apache Flink tasks.
  • camel-ribbon - To use Netflixx Ribbon with the  Service Call EIP.
  • camel-servicenow - For cloud management with ServiceNow
  • camel-telegram - For messaging with Telegram
  • camel-zipkin - For tracking Camel message flows/timings using zipkin
  • camel-consul - For integrating your application with Consul

New DSL

  • hystrix - Using Hystrix as circuit breaker. This requires having camel-hsytrix on the classpath.
  • serviceCall - To call a remote service in a distributed system where the service is looked up from a service registry of some sorts.

New Annotations

New Data Formats

New Languages

New Examples

  • camel-example-cdi-xml: illustrates the use of Camel XML configuration files into a Camel CDI application

New Tutorials

API breaking

Known Issues

Important changes to consider when upgrading

  • Java 1.8 is now required.
  • Karaf 2. 4.x is no longer supported. Karaf 4.x is the primary supported OSGi platform.
  • Jetty 8.x is no longer supported and camel-jetty8 has been removed
  • spring 4.0 is no longer supported and camel-test-spring40 has been removed
  • spring 3.x is no longer supported
  • (only spring-dm using spring 3.2.x as part of camel-spring in osgi/karaf is still in use - but spring-dm is deprecated and we recommend using blueprint)
  • Spring-DM for OSGi moved out of camel-spring into a separate camel-spring-dm module. If using Spring XML with Spring-DM then you need to install camel-spring-dm feature in Karaf/ServiceMix.
  • The deprecated @LazyLoadTypeConverter has been removed from all Camel Test modules
  • camel-gae has been removed (was not working anyway)
  • The access in the Rest DSL has been deprecated and no longer in use - its not part of swa gger specification anymore.
  • Removed the deprecated maven archetypes for SOAP WS using CXF with OSGi Blueprint
  • Optimize Camel to only enable AllowUseOriginalMessage if in use by error handler or OnCompletion. End user who manually access the original message using the Java API must configure AllowUseOriginalMessage=true.
  • The FTPS component is now using known hosts file from the user.home/.ssh directory by default. Set the option useUserKnownHostsFile=false to use old behavior.

Getting the Distributions

Binary Distributions

Description

Download Link

PGP Signature file of download

Windows Distribution

apache-camel-x.y.x.zip

apache-camel-x.y.x.zip.asc

Unix/Linux/Cygwin Distribution

apache-camel-x.y.x.tar.gz

apache-camel-x.y.x.tar.gz.asc

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

apache-camel-x.y.x-src.zip

apache-camel-x.y.x-src.zip.asc

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: