camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r1019057 - in /websites/production/camel/content: cache/main.pageCache camel-2200-release.html
Date Tue, 03 Oct 2017 16:19:19 GMT
Author: buildbot
Date: Tue Oct  3 16:19:19 2017
New Revision: 1019057

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 Tue Oct  3 16:19:19 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-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 Thr
 ift 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 expo
 se 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 s
 hould 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></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
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="ex
 ternal-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="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-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></ul><h2 id="Camel2.20.0Release-GettingtheDistributions">Gett
 ing 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
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/C
 ygwin 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/apac
 he-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">
 <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;



Mime
View raw message