Author: buildbot
Date: Fri Oct  6 12:19:38 2017
New Revision: 1019180

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/camel-2200-release.html

Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.

Modified: websites/production/camel/content/camel-2200-release.html
==============================================================================
--- websites/production/camel/content/camel-2200-release.html (original)
+++ websites/production/camel/content/camel-2200-release.html Fri Oct  6 
12:19:38 2017
@@ -88,7 +88,7 @@
 <div class="wiki-content maincontent"><h1 
id="Camel2.20.0Release-Camel2.20.0Release(currentlyinprogress)">Camel 2.20.0 
Release (currently in progress)</h1><div 
style="padding-right:20px;float:left;margin-left:-20px;"><span 
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image 
confluence-external-resource" 
src="http://camel.apache.org/images/camel-box-small.png"; 
data-image-src="http://camel.apache.org/images/camel-box-small.png";></span></div>
 
 
-<p>&#160;</p><h2 id="Camel2.20.0Release-NewandNoteworthy">New and 
Noteworthy</h2><p>Welcome to the x.y.z release which approx XXX issues resolved 
(new features, improvements and bug fixes such as...)</p><ul><li>Support for 
Java 9 as a technical preview. Official support for Java 9 will be forthcoming 
in the following releases. (source code builds and tests on a Java 9 
JVM).&#160;</li><li>Many internal optimisations in the Camel routing engine, 
such as reducing thread contention when updating JMX statistics, reducing 
internal state objects to claim less memory, and reducing the number of 
allocated objects to reduce overhead on GC etc, and much 
more.&#160;</li><li>Camel&#160;<a shape="rect" href="spring-boot.html">Spring 
Boot</a> now supports referring to bean's (lookup in Spring Boot) by their id 
names in the configuration files (application.properties|yaml file) when you 
configure any of the Camel starter components.</li><li>Camel&#160;<a 
shape="rect" href="spring-boot.html">Spring 
 Boot</a> now also supports using Spring (auto) configuration to configure 
CamelContext when using Spring XML files with 
&lt;camelContext&gt;.&#160;</li><li>Worked to make Apache Camel more ready and 
compatible with the upcoming Spring Boot 2 and Spring Framework 5. Officially 
support for these is expected in Camel 2.21 release.</li><li>The&#160;<a 
shape="rect" href="jms.html">JMS</a> component now includes JMS 2.0 
functionality to use shared (durable and non-durable) topic.</li><li>The <a 
shape="rect" class="external-link" 
href="https://github.com/apache/camel/blob/master/tooling/maven/camel-maven-plugin/src/main/docs/camel-maven-plugin.adoc";
 rel="nofollow">Camel Maven Plugin</a> can now validate for duplicate route ids 
in your source code.</li><li>Splitted&#160;<a shape="rect" 
href="twitter.html">Twitter</a>&#160;component into 4, now directmessage, 
seach, streaming and timeline has its own endpoint and scheme. See&#160;<a 
shape="rect" class="external-link" href="https://github.com
 /apache/camel/blob/master/components/camel-twitter/src/main/docs/twitter.adoc" 
rel="nofollow">documentation</a>&#160;for more 
details</li><li>Introduced&#160;<code>HeadersMapFactory</code> SPI which allows 
to plugin different implementations, or to use case sensitive maps that are 
faster than the default.</li><li>Allow&#160;<a shape="rect" 
href="kafka.html">Kafka</a> consumer to break on first unhandled exception, 
sync the offset from last known good, and then re-connect after one timeout 
cycle, to restart consuming again. This avoids loosing the failed message, but 
retry it again on either this consumer, or another consume which was 
re-balanced by Kafka. This requires to be turned on with the new option 
breakOnFirstError which can be set on both component or endpoint 
level.</li><li>Starting and stoping the CamelContext when used with Spring 
framework (SpringCamelContext) was revised to ensure that the Camel context is 
started last - when all resources should be available, and stopp
 ed first - while all resources are still available</li><li>The&#160;<a 
shape="rect" href="sql-stored-procedure.html">SQL Stored Procedure</a> now 
supports specifying custom types as FQN classnames and scale in numeric 
values.</li><li>Using Camel with&#160;<a shape="rect" 
href="spring.html">Spring</a> now supports calling <a shape="rect" 
href="bean.html">Bean</a> by their FQN name and let Spring instantiate the bean 
using auto-wired constructor's as opposed to only supporting a no-arg 
constructor.&#160;</li><li>Using Camel with <a shape="rect" 
href="spring-boot.html">Spring Boot</a> can now easily filter Java RouteBuilder 
routes via ANT-path pattern style to either include or exclude class names, 
which can be configured using Spring configuration 
properties.</li><li>The&#160;<a shape="rect" href="wire-tap.html">Wire Tap</a> 
EIP can now be configured to use static endpoint uri instead of being dynamic 
evaluated via the <a shape="rect" href="simple.html">Simple</a> 
language.&#160;</li>
 <li>The&#160;<a shape="rect" href="wire-tap.html">Wire Tap</a> EIP will now 
complete any inflight wire tapped exchanges while shutting down to give them 
time to complete graceful.</li><li>The&#160;<a shape="rect" 
href="jsonpath.html">JSonPath</a> can now split and write each row as a string 
value (JSon format) instead of using a Map/POJO type with the new writeAsString 
option.</li><li>The&#160;<a shape="rect" href="pojo-consuming.html">POJO 
Consuming</a> Consume annotation on POJO classes now support a predicate (using 
simple language) to filter the message. See the camel-example-spring-boot-pojo 
for more.</li><li>The internal JSon parser that is used by camel-catalog and 
runtime camel-catalog (from camel-core) now embeds a simple-json v2 parser 
which means it can parse any kind of json formatted document (before it was 
confined to its own dense format)</li><li>Infinispan, Ehcache and Hazelcast 
caches can automatically discover cache managers in 
spring-boot</li><li>Introduced&#160;a
 n experimental&#160;<em>Health Checks SPI</em> that can be leveraged in in 
cloud environments to detect non healthy contexts.</li><li>Introduced&#160;an 
experimental <em>Cluster SPI</em>&#160;for high availability contexts, out of 
the box Camel supports: atomix, consul, file, kubernetes and zookeeper as 
underlying clustering technologies through the respective 
components.</li><li>Introduced an experimental <em>Route Controller SPI</em> 
which is aimed to provide more fine-grained control of routes, out of the box 
Camel provides the following 
implementations:<ul><li><em>SupervisingRouteController</em> which delays 
startup of the routes after the camel context is properly started and attempt 
to restart routes that have not been starter 
successfully</li><li><em>ClusteredRouteController</em> which leverages 
<em>Cluster SPI</em> to start routes only when the context is elected as 
leader</li></ul></li></ul><p>Fixed these issues</p><ul><li>Fixed a infinitive 
recursion in Camel's&#160;<a sha
 pe="rect" href="error-handler.html">Error Handler</a> when an onException was 
routing to another route using direct endpoint and this route would throw a new 
exception that would circle back to the same onException or at a later point, 
which will cause an endless recursion.</li><li>Fixed a potential issue with 
masking password from URI using RAW(xxx) would reveal part of the password if 
the password contains a &amp; character.</li><li>The&#160;<a shape="rect" 
href="restlet.html">Restlet</a> component is now internally using&#160;curly 
brackets for its uri patterns instead of regular parentheses so it works 
similar to the other REST component and as Restlet framework itself 
does</li><li>Fixed <a shape="rect" href="hystrix-eip.html">Hystrix EIP</a> 
having wrong default for circuitBreakerForceClose when using 
camel-hystrix-starter with Spring Boot. The default should be false and not 
true</li><li>Fixed&#160;<a shape="rect" href="hystrix-eip.html">Hystrix EIP</a> 
when failing and runnin
 g fallback not signaling to Hystrix itself so it can keep state of the failure 
and react accordingly to run in half-open mode as well.</li><li>Fixed&#160;<a 
shape="rect" href="mdc-logging.html">MDC logging</a> loosing route id after 
calling a direct route from within a transacted route</li><li>Fixed a 
regression with&#160;<a shape="rect" href="bean.html">Bean</a> and&#160;<a 
shape="rect" href="simple.html">Simple</a> OGNL expressions causing ambiguous 
method call exception&#160;<span>when calling method implemented by super class 
when method is defined by interface and abstract 
class</span></li><li><span>Fixed&#160;<a shape="rect" href="rest-dsl.html">Rest 
DSL</a> (server side) not returning response on all valid uri paths when 
clients call using a HTTP OPTIONS request</span></li><li><span>Fixed&#160;<a 
shape="rect" href="rest.html">Rest</a>&#160;producer not using HTTP method 
(verb such as PUT) from the endpoint uri when calling a remote REST 
service</span></li><li><span>Fixed&#160
 ;<a shape="rect" href="timer.html">Timer</a> routes to shutdown more graceful 
and allow pending tasks to complete while they are 
in-flight.</span></li><li><span>Fixed configuring&#160;<a shape="rect" 
href="rest-dsl.html">Rest DSL</a> via application.properties|yaml in&#160;<a 
shape="rect" href="spring-boot.html">Spring Boot</a>&#160;not 
working.&#160;</span></li><li><span>Fixed <a shape="rect" 
href="https://cwiki.apache.org/confluence/display/CAMEL/Simple";>Simple 
Language</a> to add&#160;support negative numbers(without single or double 
quotes) in predicates</span></li><li><span>Fixed configuring&#160;<a 
shape="rect" href="rest-dsl.html">Rest DSL</a> in Spring Boot 
application.properties / yaml for properties to data format, component, api, 
cors etc to use a map structure and make it work.</span></li><li><span>Fixed 
configuring&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a> using 
property placeholders in the path parameters such as the 
defaultValue.</span></li><li><span>Fixe
 d an issue with parallel processing (in non-streaming mode) in some EIPs may 
cause CPU burning cycles while waiting for pending tasks to complete or 
timeout.</span></li><li><span>Fixed an issue with copying streams could block 
forever due IBM application server would mistakenly return 0 instead of -1 to 
indicate EOL for an empty stream.&#160;</span></li><li><span>Fixed an issue 
with making&#160;<a shape="rect" href="jms.html">JMS</a> and&#160;<a 
shape="rect" href="sjms.html">SJMS</a> components work with ActiveMQ Artemis 
that would otherwise causes a 
ClassCastException</span></li><li><span>Fixed&#160;<a shape="rect" 
href="rabbitmq.html">RabbitMQ</a> to better recover connection if 
exchange/queue has been deleted manually on the 
broker.</span></li><li><span>Fixed&#160;<a shape="rect" 
href="websocket.html">Websocket</a> component wasn't working with returning 
static content</span></li></ul><h3 id="Camel2.20.0Release-New">New <a 
shape="rect" href="enterprise-integration-patterns.html">
 Enterprise Integration Patterns</a></h3><h3 id="Camel2.20.0Release-New.1">New 
<a shape="rect" href="components.html">Components</a></h3><ul><li>camel-atomix 
- a component to integrate Camel with Atomix</li><li>camel-aws - added lamda 
component to be used for invoking and working with AWS Lambda 
functions</li><li>camel-caffeine - a component that allows you to interact with 
a Caffeine cache</li><li>camel-crypto-cms - a component for cryptographic 
message syntax</li><li>camel-google-bigquery -&#160;Google BigQuery data 
warehouse for analytics.</li><li>camel-headersmap - a faster implementation of 
case-insenstive map (used by camel message headers) which can be added to 
classpath at runtime to be auto installed</li><li>camel-iec60870 - To integrate 
Camel with IEC 60870-5-104 IoT devices</li><li>camel-ldif - the ldif component 
allows you to do updates on an LDAP server from a LDIF body 
content.</li><li>camel-reactor - a reactor based back-end for camel's reactive 
streams component</li><
 li>camel-thrift - the Thrift component allows to call and expose remote 
procedures (RPC) with Apache Thrift data format and serialization 
mechanism</li><li>camel-twilio - a component that allows you to interact with 
<a shape="rect" class="external-link" href="https://www.twilio.com/"; 
rel="nofollow">Twilio</a> REST APIs to call phones, send texts, etc. from a 
Camel route</li><li>camel-master - a component that leverage <em>Cluster 
SPI&#160;</em>to&#160;ensure that only a single consumer in a camel cluster is 
active at any point in time.</li></ul><h3 
id="Camel2.20.0Release-NewAnnotations">New Annotations</h3><ul><li>Added 
predicate to Consume</li></ul><h3 id="Camel2.20.0Release-NewDataFormats">New <a 
shape="rect" href="data-format.html">Data Formats</a></h3><ul><li>camel-asn1 - 
the ASN.1 data format is used for file transfer with telecommunications 
protocols.</li><li>camel-fastjson -&#160;JSon data format (using the FastJSon 
library) is used for unmarshal a JSon payload to POJO or to 
 marshal POJO back to JSon payload.</li><li>camel-thrift - the Thrift data 
format allows to call and expose remote procedures (RPC) with Apache Thrift 
data format and serialization mechanism</li></ul><h3 
id="Camel2.20.0Release-New.2">New <a shape="rect" 
href="languages.html">Languages</a></h3><h2 
id="Camel2.20.0Release-APIbreaking">API breaking</h2><h2 
id="Camel2.20.0Release-KnownIssues">Known Issues</h2><h2 
id="Camel2.20.0Release-Importantchangestoconsiderwhenupgrading">Important 
changes to consider when upgrading</h2><ul><li>Maven 3.3.3 or newer is required 
to build the project</li><li><p>camel-infinispan - the result is not more set 
in the CamelInfinispanOperationResult header but in the in body. To change this 
behavior you can set the header CamelInfinispanOperationResultHeader with the 
name of the header that should contains the result or with the resultHeader uri 
option</p></li><li><span style="color: rgb(24,54,145);"><span style="color: 
rgb(24,54,145);"><span style="color: rgb
 (36,41,46);">camel-infinispan - the uri option <em>command</em> has been 
deprecated and replaced by <em>operation</em> for 
consistency</span></span></span></li><li><span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);">camel-infinispan - the commands are now int the short form PUT, 
GET etc. old operation names like CamelInfinispanOperationPut, 
CamelInfinispanOperationGet etc have been 
deprecated.</span></span></span></li><li><span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);">camel-undertow -&#160;<span style="color: 
rgb(0,0,0);">matchOnUriPrefix option is defaulted to be FALSE in order to make 
it&#160;consistent with other components like Camel HTTP 
components.</span></span></span></span></li><li>Splitted&#160;<a shape="rect" 
href="twitter.html">Twitter</a>&#160;component into 4, now directmessage, 
seach, streaming and timeline has its own endpoint and scheme. See&#160;<
 a shape="rect" class="external-link" 
href="https://github.com/apache/camel/blob/master/components/camel-twitter/src/main/docs/twitter.adoc";
 rel="nofollow">documentation</a>&#160;for more details<span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);"><span style="color: rgb(0,0,0);"><br 
clear="none"></span></span></span></span></li><li>RuntimeEndpointRegistry is no 
longer in extended mode by default. To use that you need to set management 
statistics level to Extended explicit.</li><li>There is no 
RuntimeEndpointRegistry in use by default. You need to explicit configure a 
registry to be used, or turn it on via management agent, or set the statics 
level to extended mode.</li><li>Camel with Spring XML routes will no longer 
register endpoints in the Spring registry from Camel routes where &lt;from&gt; 
or &lt;to&gt; have endpoints assigned with an explicit id attribute. The 
option&#160;registerEndpointIdsFromRoute can be set to true on
  &lt;camelContext&gt; to be backwards compatible. However this registration is 
deprecated, instead you should use &lt;endpoint&gt; to register Camel endpoints 
with id's in Spring registry.</li><li>camel-spring-dm has been removed as it 
was not working properly anyway and was deprecated some releases ago. For XML 
DSL with OSGi use camel-blueprint instead.</li><li>Copying streams in IOHelper 
from came-core now regard EOL of data if the first read byte is zero to work 
around issues on some application servers like IBM WebSphere. This can be 
turned off by setting JVM system property 
"camel.zeroByteEOLEnabled=false".</li><li>The camel-jms component now dependes 
by default on the JMS 2.0 API (geronimo-jms_2.0_spec) instead of JMS 1.1 API 
(geronimo-jms_1.1_spec). However camel-jms works at runtime with both JMS 1.1 
or 2.0 specs so include the JMS spec JARs of your choice.</li><li>camel-kura 
upgraded to newer OSGi API version</li><li>camel-stomp uses the destination 
as-is, where as before i
 t would replace all slash characters with colon. But according to the STOMP 
spec the destination should be used as-is, and is broker 
specific.</li><li>camel-ignite is updated from using Ignite version 1.9.x to 
2.2.x</li></ul><h2 id="Camel2.20.0Release-GettingtheDistributions">Getting the 
Distributions</h2><h3 id="Camel2.20.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
 col
 span="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 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.20.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 (zip)</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" class="ex
 ternal-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><h3
 id="Camel2.20.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">
+<p>&#160;</p><h2 id="Camel2.20.0Release-NewandNoteworthy">New and 
Noteworthy</h2><p>Welcome to the x.y.z release which approx XXX issues resolved 
(new features, improvements and bug fixes such as...)</p><ul><li>Support for 
Java 9 as a technical preview. Official support for Java 9 will be forthcoming 
in the following releases. (source code builds and tests on a Java 9 
JVM).&#160;</li><li>Many internal optimisations in the Camel routing engine, 
such as reducing thread contention when updating JMX statistics, reducing 
internal state objects to claim less memory, and reducing the number of 
allocated objects to reduce overhead on GC etc, and much 
more.&#160;</li><li>Camel&#160;<a shape="rect" href="spring-boot.html">Spring 
Boot</a> now supports referring to bean's (lookup in Spring Boot) by their id 
names in the configuration files (application.properties|yaml file) when you 
configure any of the Camel starter components.</li><li>Camel&#160;<a 
shape="rect" href="spring-boot.html">Spring 
 Boot</a> now also supports using Spring (auto) configuration to configure 
CamelContext when using Spring XML files with 
&lt;camelContext&gt;.&#160;</li><li>Worked to make Apache Camel more ready and 
compatible with the upcoming Spring Boot 2 and Spring Framework 5. Officially 
support for these is expected in Camel 2.21 release.</li><li>The&#160;<a 
shape="rect" href="jms.html">JMS</a> component now includes JMS 2.0 
functionality to use shared (durable and non-durable) topic.</li><li>The <a 
shape="rect" class="external-link" 
href="https://github.com/apache/camel/blob/master/tooling/maven/camel-maven-plugin/src/main/docs/camel-maven-plugin.adoc";
 rel="nofollow">Camel Maven Plugin</a> can now validate for duplicate route ids 
in your source code.</li><li>Splitted&#160;<a shape="rect" 
href="twitter.html">Twitter</a>&#160;component into 4, now directmessage, 
seach, streaming and timeline has its own endpoint and scheme. See&#160;<a 
shape="rect" class="external-link" href="https://github.com
 /apache/camel/blob/master/components/camel-twitter/src/main/docs/twitter.adoc" 
rel="nofollow">documentation</a>&#160;for more 
details</li><li>Introduced&#160;<code>HeadersMapFactory</code> SPI which allows 
to plugin different implementations, or to use case sensitive maps that are 
faster than the default.</li><li>Allow&#160;<a shape="rect" 
href="kafka.html">Kafka</a> consumer to break on first unhandled exception, 
sync the offset from last known good, and then re-connect after one timeout 
cycle, to restart consuming again. This avoids loosing the failed message, but 
retry it again on either this consumer, or another consume which was 
re-balanced by Kafka. This requires to be turned on with the new option 
breakOnFirstError which can be set on both component or endpoint 
level.</li><li>Starting and stoping the CamelContext when used with Spring 
framework (SpringCamelContext) was revised to ensure that the Camel context is 
started last - when all resources should be available, and stopp
 ed first - while all resources are still available</li><li>The&#160;<a 
shape="rect" href="sql-stored-procedure.html">SQL Stored Procedure</a> now 
supports specifying custom types as FQN classnames and scale in numeric 
values.</li><li>Using Camel with&#160;<a shape="rect" 
href="spring.html">Spring</a> now supports calling <a shape="rect" 
href="bean.html">Bean</a> by their FQN name and let Spring instantiate the bean 
using auto-wired constructor's as opposed to only supporting a no-arg 
constructor.&#160;</li><li>Using Camel with <a shape="rect" 
href="spring-boot.html">Spring Boot</a> can now easily filter Java RouteBuilder 
routes via ANT-path pattern style to either include or exclude class names, 
which can be configured using Spring configuration 
properties.</li><li>The&#160;<a shape="rect" href="wire-tap.html">Wire Tap</a> 
EIP can now be configured to use static endpoint uri instead of being dynamic 
evaluated via the <a shape="rect" href="simple.html">Simple</a> 
language.&#160;</li>
 <li>The&#160;<a shape="rect" href="wire-tap.html">Wire Tap</a> EIP will now 
complete any inflight wire tapped exchanges while shutting down to give them 
time to complete graceful.</li><li>The&#160;<a shape="rect" 
href="jsonpath.html">JSonPath</a> can now split and write each row as a string 
value (JSon format) instead of using a Map/POJO type with the new writeAsString 
option.</li><li>The&#160;<a shape="rect" href="pojo-consuming.html">POJO 
Consuming</a> Consume annotation on POJO classes now support a predicate (using 
simple language) to filter the message. See the camel-example-spring-boot-pojo 
for more.</li><li>The internal JSon parser that is used by camel-catalog and 
runtime camel-catalog (from camel-core) now embeds a simple-json v2 parser 
which means it can parse any kind of json formatted document (before it was 
confined to its own dense format)</li><li>Infinispan, Ehcache and Hazelcast 
caches can automatically discover cache managers in 
spring-boot</li><li>Introduced&#160;a
 n experimental&#160;<em>Health Checks SPI</em> that can be leveraged in in 
cloud environments to detect non healthy contexts.</li><li>Introduced&#160;an 
experimental <em>Cluster SPI</em>&#160;for high availability contexts, out of 
the box Camel supports: atomix, consul, file, kubernetes and zookeeper as 
underlying clustering technologies through the respective 
components.</li><li>Introduced an experimental <em>Route Controller SPI</em> 
which is aimed to provide more fine-grained control of routes, out of the box 
Camel provides the following 
implementations:<ul><li><em>SupervisingRouteController</em> which delays 
startup of the routes after the camel context is properly started and attempt 
to restart routes that have not been starter 
successfully</li><li><em>ClusteredRouteController</em> which leverages 
<em>Cluster SPI</em> to start routes only when the context is elected as 
leader</li></ul></li></ul><p>Fixed these issues</p><ul><li>Fixed a infinitive 
recursion in Camel's&#160;<a sha
 pe="rect" href="error-handler.html">Error Handler</a> when an onException was 
routing to another route using direct endpoint and this route would throw a new 
exception that would circle back to the same onException or at a later point, 
which will cause an endless recursion.</li><li>Fixed a potential issue with 
masking password from URI using RAW(xxx) would reveal part of the password if 
the password contains a &amp; character.</li><li>The&#160;<a shape="rect" 
href="restlet.html">Restlet</a> component is now internally using&#160;curly 
brackets for its uri patterns instead of regular parentheses so it works 
similar to the other REST component and as Restlet framework itself 
does</li><li>Fixed <a shape="rect" href="hystrix-eip.html">Hystrix EIP</a> 
having wrong default for circuitBreakerForceClose when using 
camel-hystrix-starter with Spring Boot. The default should be false and not 
true</li><li>Fixed&#160;<a shape="rect" href="hystrix-eip.html">Hystrix EIP</a> 
when failing and runnin
 g fallback not signaling to Hystrix itself so it can keep state of the failure 
and react accordingly to run in half-open mode as well.</li><li>Fixed&#160;<a 
shape="rect" href="mdc-logging.html">MDC logging</a> loosing route id after 
calling a direct route from within a transacted route</li><li>Fixed a 
regression with&#160;<a shape="rect" href="bean.html">Bean</a> and&#160;<a 
shape="rect" href="simple.html">Simple</a> OGNL expressions causing ambiguous 
method call exception&#160;<span>when calling method implemented by super class 
when method is defined by interface and abstract 
class</span></li><li><span>Fixed&#160;<a shape="rect" href="rest-dsl.html">Rest 
DSL</a> (server side) not returning response on all valid uri paths when 
clients call using a HTTP OPTIONS request</span></li><li><span>Fixed&#160;<a 
shape="rect" href="rest.html">Rest</a>&#160;producer not using HTTP method 
(verb such as PUT) from the endpoint uri when calling a remote REST 
service</span></li><li><span>Fixed&#160
 ;<a shape="rect" href="timer.html">Timer</a> routes to shutdown more graceful 
and allow pending tasks to complete while they are 
in-flight.</span></li><li><span>Fixed configuring&#160;<a shape="rect" 
href="rest-dsl.html">Rest DSL</a> via application.properties|yaml in&#160;<a 
shape="rect" href="spring-boot.html">Spring Boot</a>&#160;not 
working.&#160;</span></li><li><span>Fixed <a shape="rect" 
href="https://cwiki.apache.org/confluence/display/CAMEL/Simple";>Simple 
Language</a> to add&#160;support negative numbers(without single or double 
quotes) in predicates</span></li><li><span>Fixed configuring&#160;<a 
shape="rect" href="rest-dsl.html">Rest DSL</a> in Spring Boot 
application.properties / yaml for properties to data format, component, api, 
cors etc to use a map structure and make it work.</span></li><li><span>Fixed 
configuring&#160;<a shape="rect" href="rest-dsl.html">Rest DSL</a> using 
property placeholders in the path parameters such as the 
defaultValue.</span></li><li><span>Fixe
 d an issue with parallel processing (in non-streaming mode) in some EIPs may 
cause CPU burning cycles while waiting for pending tasks to complete or 
timeout.</span></li><li><span>Fixed an issue with copying streams could block 
forever due IBM application server would mistakenly return 0 instead of -1 to 
indicate EOL for an empty stream.&#160;</span></li><li><span>Fixed an issue 
with making&#160;<a shape="rect" href="jms.html">JMS</a> and&#160;<a 
shape="rect" href="sjms.html">SJMS</a> components work with ActiveMQ Artemis 
that would otherwise causes a 
ClassCastException</span></li><li><span>Fixed&#160;<a shape="rect" 
href="rabbitmq.html">RabbitMQ</a> to better recover connection if 
exchange/queue has been deleted manually on the 
broker.</span></li><li><span>Fixed&#160;<a shape="rect" 
href="websocket.html">Websocket</a> component wasn't working with returning 
static content</span></li></ul><h3 id="Camel2.20.0Release-New">New <a 
shape="rect" href="enterprise-integration-patterns.html">
 Enterprise Integration Patterns</a></h3><h3 id="Camel2.20.0Release-New.1">New 
<a shape="rect" href="components.html">Components</a></h3><ul><li>camel-atomix 
- a component to integrate Camel with Atomix</li><li>camel-aws - added lamda 
component to be used for invoking and working with AWS Lambda 
functions</li><li>camel-caffeine - a component that allows you to interact with 
a Caffeine cache</li><li>camel-crypto-cms - a component for cryptographic 
message syntax</li><li>camel-google-bigquery -&#160;Google BigQuery data 
warehouse for analytics.</li><li>camel-headersmap - a faster implementation of 
case-insenstive map (used by camel message headers) which can be added to 
classpath at runtime to be auto installed</li><li>camel-iec60870 - To integrate 
Camel with IEC 60870-5-104 IoT devices</li><li>camel-ldif - the ldif component 
allows you to do updates on an LDAP server from a LDIF body 
content.</li><li>camel-reactor - a reactor based back-end for camel's reactive 
streams component</li><
 li>camel-thrift - the Thrift component allows to call and expose remote 
procedures (RPC) with Apache Thrift data format and serialization 
mechanism</li><li>camel-twilio - a component that allows you to interact with 
<a shape="rect" class="external-link" href="https://www.twilio.com/"; 
rel="nofollow">Twilio</a> REST APIs to call phones, send texts, etc. from a 
Camel route</li><li>camel-master - a component that leverage <em>Cluster 
SPI&#160;</em>to&#160;ensure that only a single consumer in a camel cluster is 
active at any point in time.</li></ul><h3 
id="Camel2.20.0Release-NewAnnotations">New Annotations</h3><ul><li>Added 
predicate to Consume</li></ul><h3 id="Camel2.20.0Release-NewDataFormats">New <a 
shape="rect" href="data-format.html">Data Formats</a></h3><ul><li>camel-asn1 - 
the ASN.1 data format is used for file transfer with telecommunications 
protocols.</li><li>camel-fastjson -&#160;JSon data format (using the FastJSon 
library) is used for unmarshal a JSon payload to POJO or to 
 marshal POJO back to JSon payload.</li><li>camel-thrift - the Thrift data 
format allows to call and expose remote procedures (RPC) with Apache Thrift 
data format and serialization mechanism</li></ul><h3 
id="Camel2.20.0Release-New.2">New <a shape="rect" 
href="languages.html">Languages</a></h3><h2 
id="Camel2.20.0Release-APIbreaking">API breaking</h2><h2 
id="Camel2.20.0Release-KnownIssues">Known Issues</h2><h2 
id="Camel2.20.0Release-Importantchangestoconsiderwhenupgrading">Important 
changes to consider when upgrading</h2><ul><li>Maven 3.3.3 or newer is required 
to build the project</li><li><p>camel-dropbox - upgraded to v2 api as v1 is EOL 
and no longer possible to use with dropbox. The v2 upgrade was not 
straightforward so there can be backward compatible issues, which is out of our 
hands.</p></li><li><p>camel-infinispan - the result is not more set in the 
CamelInfinispanOperationResult header but in the in body. To change this 
behavior you can set the header CamelInfinispanOperationR
 esultHeader with the name of the header that should contains the result or 
with the resultHeader uri option</p></li><li><span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);">camel-infinispan - the uri option <em>command</em> has been 
deprecated and replaced by <em>operation</em> for 
consistency</span></span></span></li><li><span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);">camel-infinispan - the commands are now int the short form PUT, 
GET etc. old operation names like CamelInfinispanOperationPut, 
CamelInfinispanOperationGet etc have been 
deprecated.</span></span></span></li><li><span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);">camel-undertow -&#160;<span style="color: 
rgb(0,0,0);">matchOnUriPrefix option is defaulted to be FALSE in order to make 
it&#160;consistent with other components like Camel HTTP componen
 ts.</span></span></span></span></li><li>Splitted&#160;<a shape="rect" 
href="twitter.html">Twitter</a>&#160;component into 4, now directmessage, 
seach, streaming and timeline has its own endpoint and scheme. See&#160;<a 
shape="rect" class="external-link" 
href="https://github.com/apache/camel/blob/master/components/camel-twitter/src/main/docs/twitter.adoc";
 rel="nofollow">documentation</a>&#160;for more details<span style="color: 
rgb(24,54,145);"><span style="color: rgb(24,54,145);"><span style="color: 
rgb(36,41,46);"><span style="color: rgb(0,0,0);"><br 
clear="none"></span></span></span></span></li><li>RuntimeEndpointRegistry is no 
longer in extended mode by default. To use that you need to set management 
statistics level to Extended explicit.</li><li>There is no 
RuntimeEndpointRegistry in use by default. You need to explicit configure a 
registry to be used, or turn it on via management agent, or set the statics 
level to extended mode.</li><li>Camel with Spring XML routes will no long
 er register endpoints in the Spring registry from Camel routes where 
&lt;from&gt; or &lt;to&gt; have endpoints assigned with an explicit id 
attribute. The option&#160;registerEndpointIdsFromRoute can be set to true on 
&lt;camelContext&gt; to be backwards compatible. However this registration is 
deprecated, instead you should use &lt;endpoint&gt; to register Camel endpoints 
with id's in Spring registry.</li><li>camel-spring-dm has been removed as it 
was not working properly anyway and was deprecated some releases ago. For XML 
DSL with OSGi use camel-blueprint instead.</li><li>Copying streams in IOHelper 
from came-core now regard EOL of data if the first read byte is zero to work 
around issues on some application servers like IBM WebSphere. This can be 
turned off by setting JVM system property 
"camel.zeroByteEOLEnabled=false".</li><li>The camel-jms component now dependes 
by default on the JMS 2.0 API (geronimo-jms_2.0_spec) instead of JMS 1.1 API 
(geronimo-jms_1.1_spec). However camel
 -jms works at runtime with both JMS 1.1 or 2.0 specs so include the JMS spec 
JARs of your choice.</li><li>camel-kura upgraded to newer OSGi API 
version</li><li>camel-stomp uses the destination as-is, where as before it 
would replace all slash characters with colon. But according to the STOMP spec 
the destination should be used as-is, and is broker 
specific.</li><li>camel-ignite is updated from using Ignite version 1.9.x to 
2.2.x</li></ul><h2 id="Camel2.20.0Release-GettingtheDistributions">Getting the 
Distributions</h2><h3 id="Camel2.20.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 col
 span="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/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 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.20.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 (zip)</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><h3
 id="Camel2.20.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="b
 order-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; 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;


Reply via email to