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 Wed May 25 08:19:24 2016
@@ -85,7 +85,7 @@
<tbody>
<tr>
<td valign="top" width="100%">
-<div class="wiki-content maincontent"><h1 id="Camel2.18.0Release-Camel2.18.0release(currentlyinprogress)">Camel
2.18.0 release (currently in progress)</h1><div style="padding-right:20px;float:left;margin-left:-20px;"><p><span
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource"
src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png" data-image-src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png"></span></p></div><div
style="min-height:200px">&#160;</div><h2 id="Camel2.18.0Release-NewandNoteworthy">New
and Noteworthy</h2><p>Welcome to the 2.18.0 release which approx XXX issues resolved
(new features, improvements and bug fixes such as...)</p><ul><li>Added <a
shape="rect" href="hystrix-eip.html">Hystrix EIP</a> as EIP pattern that uses native
Hystrix as the Circuit Breaker implementation.&#160;This requires having&#160;<code>camel-hsytrix</code>&#160;on
the classpath.</li><li>Added&#160;<a shape="
rect" href="servicecall-eip.html">Service Call EIP</a> 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.</li><li>Improved
the&#160;<a shape="rect" href="bean.html">Bean</a> component to better match
method parameter types when using&#160;<a shape="rect" href="simple.html">Simple</a>
language as parameter values.</li><li>Added&#160;<code>BindyConverter</code>
that allows to implement custom data converters for&#160;<a shape="rect" href="bindy.html">Bindy</a></li><li>The
access in the&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a> has been
deprecated and no longer in use - its not part of swagger specification anymore.</li><li><a
shape="rect" href="nats.html">Camel-NATS</a>&#160;now uses JNATS client instead
of the deprecated Java_nats one.</li><li>During startup of&#160;<a shape="rect"
href="camelcontext.html">CamelContext</a> 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 <code>FailedToStartupRouteException</code>
to better pin point which route thas the problem.</li><li>Improved the startup
sequence of&#160;<a shape="rect" href="spring-java-config.html">Spring Java Config</a>
to be similar to&#160;<a shape="rect" href="spring-boot.html">Spring Boot</a>
that helps prevent Spring initialization errors about circular dependencies issues.</li><li>Added
PATCH to&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a></li><li>Added
"starts with" and "ends with" operator to the <a shape="rect" href="simple.html">Simple</a>&#160;language.</li><li>Added&#160;<code>BeanIOSplitter</code>
to&#160;<a shape="rect" href="beanio.html">Bean
IO</a> that can be used with the&#160;<a shape="rect" href="splitter.html">Splitter</a>
EIP to split big payloads in streaming mode without reading the entire content into memory.</li><li>Some
of the <a shape="rect" href="aws.html">AWS</a>&#160;components allows to specify
ARN in the endpoint configuration.&#160;</li><li>The create operation in&#160;<a
shape="rect" href="zookeeper.html">Zookeeper</a> now creates sub paths if missing.</li><li>Added
support for async mode for&#160;<a shape="rect" href="servlet.html">SERVLET</a>
component to leverage Asynchronous Servlet from the Servlet 3.0 spec.</li><li><a
shape="rect" href="bean.html">Bean</a>&#160;component and <a shape="rect"
href="bean-language.html">Bean Language</a>&#160;validates method name must be
a valid according to java identifier rules, and also if parameter syntax has an ending parenthesis.</li><li>You
can now use&#160;<code>@RunWith(CamelSpringBootJUnit4ClassRunner.class)</code>
to test Camel&#160;<a shape="rect" href=
"spring-boot.html">Spring Boot</a>&#160;applications and use the Camel test
annotations from&#160;<a shape="rect" href="spring-testing.html">Spring Testing</a>
such as&#160;<code>@MockEndpoints</code>.</li><li>To turn on logging
exhausted message body with the message history you can configure this easily on the CamelContext
level with&#160;<code>setLogExhaustedMessageBody</code></li><li><a
shape="rect" href="infinispan.html">Camel-Infinispan</a> now supports Aggregation
Repository: InfinispanLocalAggregationRepository and InfinispanRemoteAggregationRepository</li><li>The&#160;<a
shape="rect" href="sql-component.html">SQL Component</a>&#160;and <a shape="rect"
href="elsql.html">ElSql</a>&#160;now supports <code>outputType=StreamList</code>&#160;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&#160;<a shape="rect" href="splitter.html">Splitter</a>
EIP to process the data row by row, and load data from the datab
ase as needed.</li><li><a shape="rect" href="jpa.html">JPA</a> now
includes a&#160;<code>JpaPollingConsumer</code> implementation that better
supports&#160;<a shape="rect" href="content-enricher.html">Content Enricher</a>
using&#160;<code>pollEnrich</code> to do a on-demand poll that returns either
none, one or a list of entities as the result.&#160;</li><li>Calling&#160;<a
shape="rect" href="bean.html">Bean</a>&#160;with method parameters defined using&#160;<a
shape="rect" href="simple.html">Simple</a> 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&#160;<a shape="rect" href="simple.html">Simple</a>.</li><li><a
shape="rect" href="cdi.html">Camel CDI</a> now supports importing Camel XML configuration
files</li><li><a shape="rect" href="cdi.html">Camel CDI</a>&#160;does
not deploy an empty Camel context bean anymore if not route builder beans no
r Camel beans are deployed</li><li><a shape="rect" href="cdi.html">Camel
CDI</a>&#160;adds the&#160;<code>@Named</code> qualifier to Camel
route management events so that it's possible to observe these events for a specific route
with an explicit <code>id</code></li><li><a shape="rect" href="beanio.html">Camel
BeanIO</a> now supports the possibility to use a custom BeanReaderErrorHandler implementation
in his configuration</li><li><a shape="rect" href="kubernetes.html">Camel
Kubernetes</a> now supports Kubernetes ConfigMap feature</li><li>The&#160;<a
shape="rect" href="tokenizer.html">Tokenizer</a> and&#160;<a shape="rect"
href="xmltokenizer.html">XMLTokenizer</a> language now supports using <a shape="rect"
href="simple.html">Simple</a> expressions as the token / xml tag names so they can
be dynamic values.</li><li>Added&#160;<code>filterDirectory</code>
and&#160;<code>filterFile</code> options to&#160;<a shape="rect" href="file2.html">File2</a>
so filtering can be done using&#160;<
a shape="rect" href="simple.html">Simple</a> language or predicates.&#160;</li><li>Optimize
Camel to only enable AllowUseOriginalMessage if in use by error handler or&#160;<a
shape="rect" href="oncompletion.html">OnCompletion</a>. End user who manually access
the original message using the Java API must configure&#160;AllowUseOriginalMessage=true.</li><li><a
shape="rect" href="ahc.html">Camel-AHC</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header to HTTP request</li><li><a
shape="rect" href="http.html">Camel-HTTP</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header to HTTP request</li><li><a
shape="rect" href="http4.html">Camel-HTTP4</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header to HTTP request</li><li><a
shape="rect" href="jetty.html">Camel-Jetty</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header t
o HTTP request</li><li><a shape="rect" href="bindy.html">Bindy</a>&#160;allows
to plugin custom formatters for mapping to custom types.</li></ul><p>Fixed
these issues:</p><ul><li>Fixed&#160;<a shape="rect" href="bean.html">Bean</a>
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)&#160;</li><li>Fixed
splitting using&#160;tarfile could cause OOME if splitting big files which was mistakenly
loaded into memory. Now we work on the tar stream directly.</li><li>Fixed&#160;<a
shape="rect" href="netty-http.html">Netty HTTP</a> and&#160;<a shape="rect"
href="netty4-http.html">Netty4 HTTP</a> issue when not specifying a port number then
port 80 would not be used but an error about port -1 is not allowed.</li><li>Fixed&#160;<a
shape="rect" href="swagger-java.html">Swagger Java</a> when using property placeholders
in&#160;<a shape="rect" href="rest-dsl.html">Rest
DSL</a> could cause invalid parameters to be included that was from the placeholder.</li><li>The&#160;<code>threads</code>&#160;EIP
now lets&#160;<a shape="rect" href="error-handling-in-camel.html">Error handling
in Camel</a>&#160;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.</li><li>Fixed&#160;<a
shape="rect" href="rest-dsl.html">Rest DSL</a> adding empty header if specifying
a non required query parameter that has no default value assigned.</li><li>Fixed
<a shape="rect" href="loop.html">doWhile</a> loop which could potentially loop
forever.</li><li>Fixed a NPE in&#160;<a shape="rect" href="zookeeper.html">Zookeeper</a>
consumer if no zookeeper node path was set</li><li>Spring-DM for OSGi moved out
of camel-spring into a separate camel-spring-dm module.</li><li>When using continued
with <a shape="rect" href="exception-clause.html">onException</a> then dead letter
channel endpooint should not be invoked.</li><li>Fixed&#160;<a shape="rect"
href="error-handler.html">Error Handler</a> to not log exceptions when using&#160;<code>continued(true)</code>
by default.</li><li>Fixed so using shareUnitOfWork would now also call specialized&#160;<code>AggregationStrategy</code>&#160;for
onTimeout, onCompletion etc.</li><li>Fixed&#160;<a shape="rect" href="jetty.html">Jetty</a>
consumer incorrectly handle multipart/form data not being mapped as attachments on the Camel
Message.</li><li>Fixed&#160;<a shape="rect" href="netty4-http.html">Netty4
HTTP</a> may fail reading the http content from the raw netty stream if the Exchange
was routed asynchronously.</li><li>Fixed&#160;<a shape="rect" href="netty4-http.html">Netty4
HTTP</a> leak ByteBuf's on the producer side which was not released in all corner cases
before they may be gargage collected.&#160;</li><li>Fixed&#160;<a shape
="rect" href="dozer.html">Dozer</a> not able to use variables in mapping files when
using OSGi.</li></ul><h3 id="Camel2.18.0Release-New">New <a shape="rect"
href="enterprise-integration-patterns.html">Enterprise Integration Patterns</a></h3><h3
id="Camel2.18.0Release-New.1">New <a shape="rect" href="components.html">Components</a></h3><ul><li>camel-cm-sms
- For sending SMS messages using SM SMS Gateway</li><li><a shape="rect" href="ehcache.html">camel-ehcache</a>&#160;-
For interacting with Ehcache 3 cache</li><li><a shape="rect" href="flink.html">camel-flink</a>
- Bridges Camel connectors with Apache Flink tasks.</li><li>camel-ribbon - To
use Netflixx Ribbon with the&#160;<a shape="rect" href="servicecall-eip.html">Service
Call EIP</a>.</li><li>camel-servicenow - For cloud management with ServiceNow</li><li>camel-telegram
- For messaging with Telegram</li><li><a shape="rect" href="camel-zipkin.html">camel-zipkin</a>
- For tracking Camel message flows/timings using <a shape="rect" c
lass="external-link" href="http://zipkin.io/" style="line-height: 1.42857;" rel="nofollow">zipkin</a></li><li><a
shape="rect" href="consul-component.html">camel-consul</a> - F<span>or integrating
your application with&#160;<a shape="rect" class="external-link" href="https://www.consul.io"
rel="nofollow">Consul</a></span></li></ul><h3 id="Camel2.18.0Release-NewDSL">New
DSL</h3><ul><li><a shape="rect" href="hystrix-eip.html">hystrix</a>
- Using Hystrix as circuit breaker. This requires having&#160;<code>camel-hsytrix</code>
on the classpath.</li><li><a shape="rect" href="servicecall-eip.html">serviceCall</a>
-&#160;To call a remote service in a distributed system where the service is looked up
from a service registry of some sorts.</li></ul><h3 id="Camel2.18.0Release-NewAnnotations">New
Annotations</h3><h3 id="Camel2.18.0Release-NewDataFormats">New <a shape="rect"
href="data-format.html">Data Formats</a></h3><h3 id="Camel2.18.0Release-New.2">New
<a shape="rect" href="languages.html">L
anguages</a></h3><h3 id="Camel2.18.0Release-New.3">New <a shape="rect"
href="examples.html">Examples</a></h3><ul><li><code>camel-example-cdi-xml</code>:
i<span style="color: rgb(0,0,0);">llustrates the use of Camel XML configuration files
into a Camel CDI application</span></li></ul><h3 id="Camel2.18.0Release-New.4">New
<a shape="rect" href="tutorials.html">Tutorials</a></h3><h2 id="Camel2.18.0Release-APIbreaking">API
breaking</h2><h2 id="Camel2.18.0Release-KnownIssues">Known Issues</h2><h2
id="Camel2.18.0Release-Importantchangestoconsiderwhenupgrading">Important changes to consider
when upgrading</h2><ul><li><strong>Java 1.8 is now required.</strong></li><li>Karaf
2.4.x is no longer supported. Karaf 4.x is the primary supported OSGi platform.</li><li>Jetty
8.x is no longer supported and camel-jetty8 has been removed</li><li>spring 4.0
is no longer supported and&#160;camel-test-spring40 has been removed</li><li>spring
3.x is no longer supported</li><li>(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)</li><li>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.</li><li>The deprecated <code>@LazyLoadTypeConverter</code>
has been removed from all&#160;<a shape="rect" href="camel-test.html">Camel Test</a>
modules</li><li>camel-gae has been removed (was not working anyway)</li><li>The
access in the&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a> has been
deprecated and no longer in use - its not part of swagger specification anymore.</li><li>Removed
the deprecated maven archetypes for SOAP WS using CXF with OSGi Blueprint</li><li>Optimize
Camel to only enable AllowUseOriginalMessage if in use by error handler or&#160;<a
shape="rect" href="oncompletion.html">OnCompletion</a>. End user who manually access
the original messa
ge using the Java API must configure&#160;AllowUseOriginalMessage=true.</li></ul><h2
id="Camel2.18.0Release-GettingtheDistributions">Getting the Distributions</h2><h3
id="Camel2.18.0Release-BinaryDistributions">Binary Distributions</h3><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Windows Distribution</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x.zip">apache-camel-x.y.x.zip</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apa
che-camel-x.y.x.zip.asc">apache-camel-x.y.x.zip.asc</a></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Unix/Linux/Cygwin Distribution</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x.tar.gz">apache-camel-x.y.x.tar.gz</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x.tar.gz.asc">apache-camel-x.y.x.tar.gz.asc</a></p></td></tr></tbody></table></div><div
class="confluence-information-macro confluence-information-macro-information"><p class="title">The
above URLs use redirection</p><span class="aui-icon aui-icon-small aui-iconfont-info
confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>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 <a shape="rect" class="external-link" href="http://www.mozilla.com/en-US/firefox/"
rel="nofollow">FireFox</a></p></div></div><h3 id="Camel2.18.0Release-SourceDistributions">Source
Distributions</h3><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th
colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Source for Windows</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.zip">apache-camel-x.y.x-src.zip</a
></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a
shape="rect" class="external-link" href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.zip.asc">apache-camel-x.y.x-src.zip.asc</a></p></td></tr></tbody></table></div><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>Source for Unix/Linux/Cygwin</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.tar.gz">apache-camel-x.y.x-src.tar.gz</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.tar.gz.asc">apache-camel-x.y.x-src.tar.gz.asc</a></p></td></tr></tbody></table></div><h3
id="Camel2.18.0Release-GettingtheBinariesusingMaven2">Getting the Binaries using Maven
2</h
3><p>To use this release in your maven project, the proper dependency configuration
that you should use in your <a shape="rect" class="external-link" href="http://maven.apache.org/guides/introduction/introduction-to-the-pom.html">Maven
POM</a> is:</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h1 id="Camel2.18.0Release-Camel2.18.0release(currentlyinprogress)">Camel
2.18.0 release (currently in progress)</h1><div style="padding-right:20px;float:left;margin-left:-20px;"><p><span
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource"
src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png" data-image-src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png"></span></p></div><div
style="min-height:200px">&#160;</div><h2 id="Camel2.18.0Release-NewandNoteworthy">New
and Noteworthy</h2><p>Welcome to the 2.18.0 release which approx XXX issues resolved
(new features, improvements and bug fixes such as...)</p><ul><li>Added <a
shape="rect" href="hystrix-eip.html">Hystrix EIP</a> as EIP pattern that uses native
Hystrix as the Circuit Breaker implementation.&#160;This requires having&#160;<code>camel-hsytrix</code>&#160;on
the classpath.</li><li>Added&#160;<a shape="
rect" href="servicecall-eip.html">Service Call EIP</a> 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.</li><li>Improved
the&#160;<a shape="rect" href="bean.html">Bean</a> component to better match
method parameter types when using&#160;<a shape="rect" href="simple.html">Simple</a>
language as parameter values.</li><li>Added&#160;<code>BindyConverter</code>
that allows to implement custom data converters for&#160;<a shape="rect" href="bindy.html">Bindy</a></li><li>The
access in the&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a> has been
deprecated and no longer in use - its not part of swagger specification anymore.</li><li><a
shape="rect" href="nats.html">Camel-NATS</a>&#160;now uses JNATS client instead
of the deprecated Java_nats one.</li><li>During startup of&#160;<a shape="rect"
href="camelcontext.html">CamelContext</a> 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 <code>FailedToStartupRouteException</code>
to better pin point which route thas the problem.</li><li>Improved the startup
sequence of&#160;<a shape="rect" href="spring-java-config.html">Spring Java Config</a>
to be similar to&#160;<a shape="rect" href="spring-boot.html">Spring Boot</a>
that helps prevent Spring initialization errors about circular dependencies issues.</li><li>Added
PATCH to&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a></li><li>Added
"starts with" and "ends with" operator to the <a shape="rect" href="simple.html">Simple</a>&#160;language.</li><li>Added&#160;<code>BeanIOSplitter</code>
to&#160;<a shape="rect" href="beanio.html">Bean
IO</a> that can be used with the&#160;<a shape="rect" href="splitter.html">Splitter</a>
EIP to split big payloads in streaming mode without reading the entire content into memory.</li><li>Some
of the <a shape="rect" href="aws.html">AWS</a>&#160;components allows to specify
ARN in the endpoint configuration.&#160;</li><li>The create operation in&#160;<a
shape="rect" href="zookeeper.html">Zookeeper</a> now creates sub paths if missing.</li><li>Added
support for async mode for&#160;<a shape="rect" href="servlet.html">SERVLET</a>
component to leverage Asynchronous Servlet from the Servlet 3.0 spec.</li><li><a
shape="rect" href="bean.html">Bean</a>&#160;component and <a shape="rect"
href="bean-language.html">Bean Language</a>&#160;validates method name must be
a valid according to java identifier rules, and also if parameter syntax has an ending parenthesis.</li><li>You
can now use&#160;<code>@RunWith(CamelSpringBootJUnit4ClassRunner.class)</code>
to test Camel&#160;<a shape="rect" href=
"spring-boot.html">Spring Boot</a>&#160;applications and use the Camel test
annotations from&#160;<a shape="rect" href="spring-testing.html">Spring Testing</a>
such as&#160;<code>@MockEndpoints</code>.</li><li>To turn on logging
exhausted message body with the message history you can configure this easily on the CamelContext
level with&#160;<code>setLogExhaustedMessageBody</code></li><li><a
shape="rect" href="infinispan.html">Camel-Infinispan</a> now supports Aggregation
Repository: InfinispanLocalAggregationRepository and InfinispanRemoteAggregationRepository</li><li>The&#160;<a
shape="rect" href="sql-component.html">SQL Component</a>&#160;and <a shape="rect"
href="elsql.html">ElSql</a>&#160;now supports <code>outputType=StreamList</code>&#160;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&#160;<a shape="rect" href="splitter.html">Splitter</a>
EIP to process the data row by row, and load data from the datab
ase as needed.</li><li><a shape="rect" href="jpa.html">JPA</a> now
includes a&#160;<code>JpaPollingConsumer</code> implementation that better
supports&#160;<a shape="rect" href="content-enricher.html">Content Enricher</a>
using&#160;<code>pollEnrich</code> to do a on-demand poll that returns either
none, one or a list of entities as the result.&#160;</li><li>Calling&#160;<a
shape="rect" href="bean.html">Bean</a>&#160;with method parameters defined using&#160;<a
shape="rect" href="simple.html">Simple</a> 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&#160;<a shape="rect" href="simple.html">Simple</a>.</li><li><a
shape="rect" href="cdi.html">Camel CDI</a> now supports importing Camel XML configuration
files</li><li><a shape="rect" href="cdi.html">Camel CDI</a>&#160;does
not deploy an empty Camel context bean anymore if not route builder beans no
r Camel beans are deployed</li><li><a shape="rect" href="cdi.html">Camel
CDI</a>&#160;adds the&#160;<code>@Named</code> qualifier to Camel
route management events so that it's possible to observe these events for a specific route
with an explicit <code>id</code></li><li><a shape="rect" href="beanio.html">Camel
BeanIO</a> now supports the possibility to use a custom BeanReaderErrorHandler implementation
in his configuration</li><li><a shape="rect" href="kubernetes.html">Camel
Kubernetes</a> now supports Kubernetes ConfigMap feature</li><li>The&#160;<a
shape="rect" href="tokenizer.html">Tokenizer</a> and&#160;<a shape="rect"
href="xmltokenizer.html">XMLTokenizer</a> language now supports using <a shape="rect"
href="simple.html">Simple</a> expressions as the token / xml tag names so they can
be dynamic values.</li><li>Added&#160;<code>filterDirectory</code>
and&#160;<code>filterFile</code> options to&#160;<a shape="rect" href="file2.html">File2</a>
so filtering can be done using&#160;<
a shape="rect" href="simple.html">Simple</a> language or predicates.&#160;</li><li>Optimize
Camel to only enable AllowUseOriginalMessage if in use by error handler or&#160;<a
shape="rect" href="oncompletion.html">OnCompletion</a>. End user who manually access
the original message using the Java API must configure&#160;AllowUseOriginalMessage=true.</li><li><a
shape="rect" href="ahc.html">Camel-AHC</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header to HTTP request</li><li><a
shape="rect" href="http.html">Camel-HTTP</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header to HTTP request</li><li><a
shape="rect" href="http4.html">Camel-HTTP4</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header to HTTP request</li><li><a
shape="rect" href="jetty.html">Camel-Jetty</a> now support a connectionClose parameter
to allow explicitly adding a Connection Close header t
o HTTP request</li><li><a shape="rect" href="bindy.html">Bindy</a>&#160;allows
to plugin custom formatters for mapping to custom types.</li></ul><p>Fixed
these issues:</p><ul><li>Fixed&#160;<a shape="rect" href="bean.html">Bean</a>
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)&#160;</li><li>Fixed
splitting using&#160;tarfile could cause OOME if splitting big files which was mistakenly
loaded into memory. Now we work on the tar stream directly.</li><li>Fixed&#160;<a
shape="rect" href="netty-http.html">Netty HTTP</a> and&#160;<a shape="rect"
href="netty4-http.html">Netty4 HTTP</a> issue when not specifying a port number then
port 80 would not be used but an error about port -1 is not allowed.</li><li>Fixed&#160;<a
shape="rect" href="swagger-java.html">Swagger Java</a> when using property placeholders
in&#160;<a shape="rect" href="rest-dsl.html">Rest
DSL</a> could cause invalid parameters to be included that was from the placeholder.</li><li>The&#160;<code>threads</code>&#160;EIP
now lets&#160;<a shape="rect" href="error-handling-in-camel.html">Error handling
in Camel</a>&#160;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.</li><li>Fixed&#160;<a
shape="rect" href="rest-dsl.html">Rest DSL</a> adding empty header if specifying
a non required query parameter that has no default value assigned.</li><li>Fixed
<a shape="rect" href="loop.html">doWhile</a> loop which could potentially loop
forever.</li><li>Fixed a NPE in&#160;<a shape="rect" href="zookeeper.html">Zookeeper</a>
consumer if no zookeeper node path was set</li><li>Spring-DM for OSGi moved out
of camel-spring into a separate camel-spring-dm module.</li><li>When using continued
with <a shape="rect" href="exception-clause.html">onException</a> then dead letter
channel endpooint should not be invoked.</li><li>Fixed&#160;<a shape="rect"
href="error-handler.html">Error Handler</a> to not log exceptions when using&#160;<code>continued(true)</code>
by default.</li><li>Fixed so using shareUnitOfWork would now also call specialized&#160;<code>AggregationStrategy</code>&#160;for
onTimeout, onCompletion etc.</li><li>Fixed&#160;<a shape="rect" href="jetty.html">Jetty</a>
consumer incorrectly handle multipart/form data not being mapped as attachments on the Camel
Message.</li><li>Fixed&#160;<a shape="rect" href="netty4-http.html">Netty4
HTTP</a> may fail reading the http content from the raw netty stream if the Exchange
was routed asynchronously.</li><li>Fixed&#160;<a shape="rect" href="netty4-http.html">Netty4
HTTP</a> leak ByteBuf's on the producer side which was not released in all corner cases
before they may be gargage collected.&#160;</li><li>Fixed&#160;<a shape
="rect" href="dozer.html">Dozer</a> not able to use variables in mapping files when
using OSGi.</li></ul><h3 id="Camel2.18.0Release-New">New <a shape="rect"
href="enterprise-integration-patterns.html">Enterprise Integration Patterns</a></h3><h3
id="Camel2.18.0Release-New.1">New <a shape="rect" href="components.html">Components</a></h3><ul><li>camel-cm-sms
- For sending SMS messages using SM SMS Gateway</li><li><a shape="rect" href="ehcache.html">camel-ehcache</a>&#160;-
For interacting with Ehcache 3 cache</li><li><a shape="rect" href="flink.html">camel-flink</a>
- Bridges Camel connectors with Apache Flink tasks.</li><li>camel-ribbon - To
use Netflixx Ribbon with the&#160;<a shape="rect" href="servicecall-eip.html">Service
Call EIP</a>.</li><li>camel-servicenow - For cloud management with ServiceNow</li><li>camel-telegram
- For messaging with Telegram</li><li><a shape="rect" href="camel-zipkin.html">camel-zipkin</a>
- For tracking Camel message flows/timings using <a shape="rect" c
lass="external-link" href="http://zipkin.io/" style="line-height: 1.42857;" rel="nofollow">zipkin</a></li><li><a
shape="rect" href="consul-component.html">camel-consul</a> - F<span>or integrating
your application with&#160;<a shape="rect" class="external-link" href="https://www.consul.io"
rel="nofollow">Consul</a></span></li></ul><h3 id="Camel2.18.0Release-NewDSL">New
DSL</h3><ul><li><a shape="rect" href="hystrix-eip.html">hystrix</a>
- Using Hystrix as circuit breaker. This requires having&#160;<code>camel-hsytrix</code>
on the classpath.</li><li><a shape="rect" href="servicecall-eip.html">serviceCall</a>
-&#160;To call a remote service in a distributed system where the service is looked up
from a service registry of some sorts.</li></ul><h3 id="Camel2.18.0Release-NewAnnotations">New
Annotations</h3><h3 id="Camel2.18.0Release-NewDataFormats">New <a shape="rect"
href="data-format.html">Data Formats</a></h3><h3 id="Camel2.18.0Release-New.2">New
<a shape="rect" href="languages.html">L
anguages</a></h3><h3 id="Camel2.18.0Release-New.3">New <a shape="rect"
href="examples.html">Examples</a></h3><ul><li><code>camel-example-cdi-xml</code>:
i<span style="color: rgb(0,0,0);">llustrates the use of Camel XML configuration files
into a Camel CDI application</span></li></ul><h3 id="Camel2.18.0Release-New.4">New
<a shape="rect" href="tutorials.html">Tutorials</a></h3><h2 id="Camel2.18.0Release-APIbreaking">API
breaking</h2><h2 id="Camel2.18.0Release-KnownIssues">Known Issues</h2><h2
id="Camel2.18.0Release-Importantchangestoconsiderwhenupgrading">Important changes to consider
when upgrading</h2><ul><li><strong>Java 1.8 is now required.</strong></li><li>Karaf
2.4.x is no longer supported. Karaf 4.x is the primary supported OSGi platform.</li><li>Jetty
8.x is no longer supported and camel-jetty8 has been removed</li><li>spring 4.0
is no longer supported and&#160;camel-test-spring40 has been removed</li><li>spring
3.x is no longer supported</li><li>(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)</li><li>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.</li><li>The deprecated <code>@LazyLoadTypeConverter</code>
has been removed from all&#160;<a shape="rect" href="camel-test.html">Camel Test</a>
modules</li><li>camel-gae has been removed (was not working anyway)</li><li>The
access in the&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a> has been
deprecated and no longer in use - its not part of swagger specification anymore.</li><li>Removed
the deprecated maven archetypes for SOAP WS using CXF with OSGi Blueprint</li><li>Optimize
Camel to only enable AllowUseOriginalMessage if in use by error handler or&#160;<a
shape="rect" href="oncompletion.html">OnCompletion</a>. End user who manually access
the original messa
ge using the Java API must configure&#160;AllowUseOriginalMessage=true.</li><li>The&#160;<a
shape="rect" href="ftp2.html">FTPS</a>&#160;component is now using known hosts
file from the user.home/.ssh directory by default. Set the option&#160;useUserKnownHostsFile=false
to use old behavior.</li></ul><h2 id="Camel2.18.0Release-GettingtheDistributions">Getting
the Distributions</h2><h3 id="Camel2.18.0Release-BinaryDistributions">Binary Distributions</h3><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1"
rowspan="1" class="confluenceTh"><p>Download Link</p></th><th colspan="1"
rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Windows Distribution</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-cam
el/x.y.x/apache-camel-x.y.x.zip">apache-camel-x.y.x.zip</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x.zip.asc">apache-camel-x.y.x.zip.asc</a></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Unix/Linux/Cygwin Distribution</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x.tar.gz">apache-camel-x.y.x.tar.gz</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x.tar.gz.asc">apache-camel-x.y.x.tar.gz.asc</a></p></td></tr></tbody></table></div><div
class="confluence-information-macro confluence-information-macro-information"><p class="title">The
above URLs use redirection</p><span cla
ss="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>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 <a shape="rect" class="external-link"
href="http://www.mozilla.com/en-US/firefox/" rel="nofollow">FireFox</a></p></div></div><h3
id="Camel2.18.0Release-SourceDistributions">Source Distributions</h3><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Source for Windows</p><
/td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect"
class="external-link" href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.zip">apache-camel-x.y.x-src.zip</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.zip.asc">apache-camel-x.y.x-src.zip.asc</a></p></td></tr></tbody></table></div><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>Source for Unix/Linux/Cygwin</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.tar.gz">apache-camel-x.y.x-src.tar.gz</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link"
href="http://www.apache.org/dist/camel/apa
che-camel/x.y.x/apache-camel-x.y.x-src.tar.gz.asc">apache-camel-x.y.x-src.tar.gz.asc</a></p></td></tr></tbody></table></div><h3
id="Camel2.18.0Release-GettingtheBinariesusingMaven2">Getting the Binaries using Maven
2</h3><p>To use this release in your maven project, the proper dependency configuration
that you should use in your <a shape="rect" class="external-link" href="http://maven.apache.org/guides/introduction/introduction-to-the-pom.html">Maven
POM</a> is:</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
&lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
&lt;artifactId&gt;camel-core&lt;/artifactId&gt;