Author: buildbot
Date: Sun Feb 28 13:18:43 2016
New Revision: 981334
Log:
Production update by buildbot for camel
Modified:
websites/production/camel/content/cache/main.pageCache
websites/production/camel/content/camel-2170-release.html
websites/production/camel/content/rest-dsl.html
Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.
Modified: websites/production/camel/content/camel-2170-release.html
==============================================================================
--- websites/production/camel/content/camel-2170-release.html (original)
+++ websites/production/camel/content/camel-2170-release.html Sun Feb 28
13:18:43 2016
@@ -85,7 +85,7 @@
<tbody>
<tr>
<td valign="top" width="100%">
-<div class="wiki-content maincontent"><h1
id="Camel2.17.0Release-Camel2.17.0release(currentlyinprogress)">Camel 2.17.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"> </div><h2
id="Camel2.17.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>The component documentation generated from
the source code has been double checked to be up to date and include all the
options the endpoints supports.</li><li><a shape="rect" href="tools.html">Camel
commands</a> for <a shape="rect" href="spring-b
oot.html">Spring Boot</a></li><li>Many improvements to Camel <a
shape="rect" href="kura.html">Kura</a></li><li>Added transacted option
to <a shape="rect" href="sql-component.html">SQL Component</a> when used
as a consumer in a transacted route.</li><li>Added support for UPDATE operation
to <a shape="rect"
href="elasticsearch.html">ElasticSearch</a>.</li><li>Allow to reuse existing
configured Elasticsearch Client on the <a shape="rect"
href="elasticsearch.html">ElasticSearch</a> component, instead of creating a
client per endpoint. </li><li>The <code>include</code>
and <code>exclude</code> options on <a shape="rect"
href="file2.html">File2</a> and <a shape="rect" href="ftp.html">FTP</a>
endpoints is now case in-sensitive out of the box.</li><li>Resource based
component such as <a shape="rect" href="xslt.html">XSLT</a>, <a
shape="rect" href="velocity.html">Velocity</a> etc can load the resource
file from the <a shape="re
ct" href="registry.html">Registry</a> by using <code>ref:</code> as
prefix.</li><li><span>Upgraded camel-amqp to the latest qpid-jms-client (also
AMQP < 1.0 is not supported anymore).</span></li><li><span>Many improvements
to Camel <a shape="rect" href="amqp.html">AMQP</a>
component.</span></li><li><span>The <a shape="rect"
href="metrics-component.html">Metrics Component</a> allows to capture <a
shape="rect" href="message-history.html">Message History</a> performance
statistics with
the <code>MetricsMessageHistoryFactory </code></span></li><li>Reduced
the number of mbeans enlisted in the services tree, to only include mbeans that
has value to be managed.</li><li>The <a shape="rect"
href="elasticsearch.html">Elasticsearch Component</a> now supports
MultiGet operation</li><li>The <a shape="rect"
href="throttler.html">Throttler</a> has been improved to be more performant and
use a rolling window for time periods which gives a better flow.
</li><li>The <code>setHeader</code>
and <code>setExchangeProperty</code> allows to use a dynamic header key
using the <a shape="rect" href="simple.html">Simple</a> language if
the name of the key is a <a shape="rect"
href="simple.html">Simple</a> language expression.</li><li>Add collate
function to <a shape="rect" href="simple.html">Simple</a> language to make
it easier to split a message body into sub lists of a specified size. The
function is similar to the collate function from Groovy.</li><li>The <a
shape="rect" href="camel-run-maven-goal.html">Camel Run Maven Goal</a> is able
to auto detect if its a OSGi Blueprint or CDI project so end users no longer
have to explicit configure this on the plugin.</li><li><a shape="rect"
href="elasticsearch.html">Camel-Elasticsearch</a> now supports Multiget,
Multisearch and exists operation</li><li><a shape="rect"
href="git.html">Camel-Git</a> now supports Cherry-pick
operation</li><li>Stopping the 
<code>Main</code> class from JMX will now trigger shutdown of the Main
class/JVM also, as it does when hitting ctrl + c.</li><li>Added option to
skipFirst to the <a shape="rect" href="tokenizer.html">Tokenizer</a>
language to make it easy to skip the very first element, when for example
splitting a CSV file using the <a shape="rect"
href="splitter.html">Splitter</a> EIP.</li><li>The <a shape="rect"
href="rest-dsl.html">Rest DSL</a> now supports default values for query
parameters</li><li>The <a shape="rect" href="rest-dsl.html">Rest DSL</a>
now only binds from POJO to JSon/XML if the content-type is for json or xml.
This allows you to specify a custom content-type and omit the binding, such as
when having binary payloads.</li><li>Exchange and Message only output id in
their toString method to avoid outputting any message details such as sensitive
details from message bodies.</li><li>Camel <a shape="rect"
href="error-handler.html">Error Handler</a> no longer
log message body/header details when logging the <a shape="rect"
href="message-history.html">Message History</a>. This avoids logging
any sensitive details from message bodies.</li><li>Camel <a
shape="rect" href="exception-clause.html">Exception Clause</a> and <a
shape="rect" href="error-handler.html">Error Handler</a> now supports using a
custom <code>Processor</code> to be invoked right after an exception was
thrown using the new <strong>onExceptionOccurred</strong>
option.</li><li><a shape="rect" href="rabbitmq.html">RabbitMQ</a> consumer more
resilient to auto re-connect in case of connection failures</li><li>The <a
shape="rect" href="json.html">JSON</a> <code>camel-jackson</code> can be
used as a type converter to convert json to/from POJO and String/byte[] types,
if enabled.</li><li>The <a shape="rect" href="sql-component.html">SQL
Component</a> now supports loading the SQL queries from external files on the
classpath or file system, whe
re you can format the queries using newlines and
indenting.</li><li>The <a shape="rect" href="mail.html">Mail</a> consumer
allows to use an idempotent repository which allows to cluster consuming
from the same mailbox, and let the repository coordinate whether a mail message
is valid for the consumer to process.</li><li>Added support for completion
interval on the <a shape="rect" href="sjms-batch.html">SJMS Batch</a>
component, which allows to trigger batch completion in a fixed scheduled
interval.</li><li>The <a shape="rect" href="http.html">HTTP</a>
and <a shape="rect" href="http4.html">HTTP4</a> producers now support
the <code>disableStreamCache</code> option to allow to use the raw
response stream as the message body instead of wrapping using <a
shape="rect" href="stream-caching.html">Stream caching</a></li><li>The <a
shape="rect" href="cdi.html">Camel CDI</a> component has been improved to
better fit into the CDI programming model, cover a lar
ger set of containers, and provide these new features:<ul><li>The Camel events
from the <code>org.apache.camel.management.event</code> package (like
<code>CamelContextStartedEvent</code>) can be observed as CDI
events</li><li>The new CDI event Camel endpoint enable <span>CDI events to
be seamlessly consumed from (respectively produced by) Camel consumers
(respectively Camel producers)</span></li><li><span><span>CDI beans annotated
with the </span><code>@Converter</code><span> annotation are
automatically registered as type
converters</span></span></li><li><span><span>The CDI Camel contexts can
be properly customised programmatically in bean constructor
or <code>@PostConstruct</code> lifecycle
callback</span></span></li><li>Camel routes configured in
<code>RouteBuilder</code> beans are added before the corresponding Camel
contexts get started</li><li><span>CDI Camel contexts are now properly adapted
when deployed in OSGi containers and are registered as
OSGi services</span></li><li>Proper support of multiple Camel contexts across
all the features<span><br clear="none"></span></li></ul></li><li>The <a
shape="rect" href="xslt.html">XSLT</a> component now supports Saxon's <a
shape="rect" class="external-link"
href="http://www.saxonica.com/html/documentation/extensibility/integratedfunctions"
rel="nofollow" title="Follow link">integrated extension
functions</a>.</li><li>Added option <code>reuseChannel</code> to <a
shape="rect" href="netty4.html">Netty4</a> which allows to reuse existing
Channel when using a netty producer to call a server multiple times during
routing an Exchange.</li><li>Idempotent Repository now supports optional
serialized headers </li><li><a shape="rect" href="rest-dsl.html">Rest
DSL</a> adjusted to swagger spec 2.0 and <a shape="rect"
href="swagger-java.html">Swagger Java</a> as well.</li><li><a shape="rect"
href="rest-dsl.html">Rest DSL</a> allows to specify response headers as well.
</li><li><a shape="rect" href="quartz2.html">Camel-quartz2</a> now supports
customCalendar to avoid specific range of dates (Holidays for example) in
Scheduler and Triggers.</li><li>Improved <a shape="rect"
href="bean-language.html">Bean Language</a> to be able to invoke static methods
on pure static classes.</li><li>When <a shape="rect"
href="bean-language.html">Bean Language</a> failed to invoke a method from
an OGNL method chain (eg invoke the following 3 methods
"doFoo.doSomething.getBar") and a method returned null which prevent further
method invocation as that would cause a NullPointerException. Now you have a
more detailed exception message to better explain this.</li></ul><p>Fixed these
issues</p><ul><li>The <a shape="rect" href="swagger-java.html">Swagger
Java</a> now parses nested types in the POJO model that has been annotated with
the swagger api annotations to use in the schema api
model</li><li>Fixed <a shape="rect" href="rest-dsl.html">Rest D
SL</a> with apiContextPath fail to start if there are 2 ore more rest's
in use.</li><li>Paho component name is not limited to 4 characters
anymore.</li><li>Fixed <a shape="rect" href="spring-boot.html">Spring
Boot</a> not starting Camel routes if running in Spring Cloud.</li><li>Fixed an
issue with <a shape="rect" href="swagger-java.html">Swagger Java</a> using
api-docs could lead to api-doc route being added multiple times</li><li>Fixed a
few things missing in the generated swagger model when using <a
shape="rect" href="swagger-java.html">Swagger Java</a></li><li>Fixed
using <code>statement.xxx</code> options on the <a shape="rect"
href="jdbc.html">JDBC</a> consumer would only be used in first
poll.</li><li>Fixed  <a shape="rect"
href="http.html">HTTP</a> and <a shape="rect"
href="http4.html">HTTP4</a> to keep trailing slash if provided in uri when
calling remote HTTP service.</li><li>Fixed <a shape="rect"
href="oncompletion.ht
ml">OnCompletion</a> to keep any caught exception stored as property on
the <code>Exchange</code> which allows to access that information to know
if there was an exception during routing.</li><li>Fixed an issue with <a
shape="rect" href="bean.html">Bean</a> component or <a shape="rect"
href="simple.html">Simple</a> language with OGNL method call, would pick method
with java.lang.Object type over a better suited method, when the method is
overloaded.</li><li>Fixed <code>camel-blueprint</code> to wait for the
bundles with the component and data-formats the <a shape="rect"
href="rest-dsl.html">Rest DSL</a> has been configured to use, are available
before starting Camel.</li><li>Fixed an issue with <a shape="rect"
href="error-handler.html">Error Handler</a> would log any handled(true)
exceptions.</li><li>Fixed a memory leak if adding/removing routes using <a
shape="rect" href="idempotent-consumer.html">Idempotent Consumer</a> where the
repository would
not be removed from the JMX registry when routes is removed.</li><li>Fixed
issue with <a shape="rect" href="spring-boot.html">Spring Boot</a> would
eager shutdown some Camel resources like type converters, which spring-boot
should let Camel handle the lifecycle of these resources.</li><li>Fixed <a
shape="rect" href="cxfrs.html">CXFRS</a> using simple binding mode would use
the content-length header from the incoming message in the response, instead of
calculating the length based on the output message body.</li><li>Fixed an issue
with <a shape="rect" href="simple.html">Simple</a> if starting the
expression with <code>file:</code> could fail with an
error.</li><li>Fixed <a shape="rect"
href="idempotent-consumer.html">Idempotent Consumer</a> would not propagate
exception thrown from <code>IdempotentRepository</code> to Camel's <a
shape="rect" href="error-handler.html">Error Handler</a> such
as <code>onException</code><code><br clear="none"></co
de></li></ul><h3 id="Camel2.17.0Release-New">New <a shape="rect"
href="enterprise-integration-patterns.html">Enterprise Integration
Patterns</a></h3><h3 id="Camel2.17.0Release-New.1">New <a shape="rect"
href="components.html">Components</a></h3><ul><li><a shape="rect"
href="aws-kinesis.html">camel-aws</a><span style="line-height: 1.42857;"> - AWS
kinesis streams component added</span></li><li><a shape="rect"
href="aws-ddbstream.html">camel-aws</a> - DynamoDB streams component
added</li><li><a shape="rect" href="braintree.html">camel-braintree</a> -
for interacting with Braintree Payments.</li><li><a shape="rect"
href="etcd.html">camel-etcd</a><span style="line-height: 1.42857;"> -
Integrating Camel with </span><a shape="rect" class="external-link"
href="https://coreos.com/etcd/" style="line-height: 1.42857;"
rel="nofollow">Etcd</a><span style="line-height: 1.42857;"> key value
store</span></li><li>camel-kubernetes - Integrates Camel with
Kubernetes</li><li><a sha
pe="rect" href="ignite.html">camel-ignite</a> - for working with Apache
Ignite.</li><li>camel-ironmq - messaging with the <a shape="rect"
class="external-link" href="http://www.iron.io/platform/ironmq/"
rel="nofollow">IronMQ</a> cloud messaging.</li><li><a shape="rect"
href="jcache.html">camel-jcache</a><a shape="rect"
href="mllp.html"><span> - support </span></a><a shape="rect"
class="external-link" href="https://github.com/jsr107/jsr107spec"
rel="nofollow">JCache / JSR107</a><a shape="rect"
href="mllp.html"><span> caching.</span></a></li><li><a shape="rect"
href="mllp.html">camel-mllp</a> - <span style="color: rgb(0,0,0);">for
working with the HL7 MLLP protocol. This is an alternative to <a
shape="rect" href="hl7.html">HL7</a> component.</span></li><li><span
style="color: rgb(0,0,0);">camel-nats - for interacting with Nats messaging
platform</span></li><li><a shape="rect"
href="apache-spark.html">camel-spark</a> - bridges Apache Spark computations
with Cam
el endpoints</li><li><a shape="rect"
href="sql-stored-procedure.html">camel-sql</a> - Now supports calling stored
procedures using the new <a shape="rect"
href="sql-stored-procedure.html">sql-stored component</a>.</li></ul><h3
id="Camel2.17.0Release-NewDSL">New DSL</h3><h3
id="Camel2.17.0Release-NewAnnotations">New Annotations</h3><h3
id="Camel2.17.0Release-NewDataFormats">New <a shape="rect"
href="data-format.html">Data Formats</a></h3><ul><li><a shape="rect"
href="mime-multipart.html">MIME-Multipart</a> - mime based data
format.</li><li><a shape="rect" href="lzf-data-format.html">LZF Data Format</a>
- LZF based data format. </li></ul><h3 id="Camel2.17.0Release-New.2">New
<a shape="rect" href="languages.html">Languages</a></h3><h3
id="Camel2.17.0Release-New.3">New <a shape="rect"
href="examples.html">Examples</a></h3><ul><li>camel-example-cdi-metrics -
illustrates the integration between Camel, Dropwizard Metrics and
CDI.</li><li>camel-example-cdi-properties - <span>illus
trates the integration between Camel, DeltaSpike and CDI for configuration
properties.</span></li><li><span>camel-example-cdi-osgi - a<span> CDI
application using the SJMS component that can be executed inside an OSGi
container using PAX
CDI.</span></span></li><li><span>camel-example-cdi-rest-servlet
- <span>illustrates the Camel REST DSL being used in a Web application
that uses CDI as dependency injection
framework</span></span></li><li>camel-example-spring-boot-metrics - showing a
Camel spring-boot application that report metrics to Graphite. Requires
Graphite running on your network.</li><li>camel-example-widget-gadget-cdi - The
Widget and Gadget use-case from the EIP book implemented in Java with CDI
dependency Injection.</li><li>camel-example-widget-gadget-java - The Widget and
Gadget use-case from the EIP book implemented in plain old Java Main without
any kind of <em>application
server</em>.</li><li>camel-example-widget-gadget-xml - The Widget and Gadget
use-case f
rom the EIP book implemented in Spring XML without any Java code or any kind
of <em>application server</em>.</li></ul><h3
id="Camel2.17.0Release-New.4">New <a shape="rect"
href="tutorials.html">Tutorials</a></h3><h2
id="Camel2.17.0Release-APIbreaking">API breaking</h2><ul><li>As part of the <a
shape="rect" href="cdi.html">Camel CDI</a> component refactoring:<ul><li>The
<code>@ContextName</code> qualifier does not have a default empty value
anymore as it is irrelevant</li><li>The CdiPropertiesComponent class
has been removed, the standard PropertiesComponent can be used
instead</li></ul></li></ul><h2 id="Camel2.17.0Release-KnownIssues">Known
Issues</h2><h2 id="Camel2.17.0Release-Dependencyupgrades">Dependency
upgrades</h2><ul><li>Apache Cassandra from 2.1.8 to 2.2.2</li><li>Apache
Deltaspike from 1.5.1 to 1.5.2</li><li>Apache Gora from 0.6 to
0.6.1</li><li>Apache Jackrabbit from 2.11.0 to 2.11.3</li><li>Apache Kafka from
0.8.2.2 to 0.9.0.0</li><li>Apache
Lucene from 4.10.4 to 5.2.1</li><li>Apache Mina from 2.0.9 to
2.0.10</li><li>Apache OpenEjb from 4.7.2 to 4.7.3</li><li>Apache Solr from
4.10.4 to 5.2.1</li><li>Aws SDK Java to version 1.10.37</li><li>Atmosphere from
<span class="blob-code-inner">2.4.0</span> to 2.4.1.4</li><li>Cassandra driver
from 2.1.8 to 2.1.9</li><li>Cassandra-unit from 2.1.9.2 to
2.2.2.1</li><li>Cglib from 3.1 to 3.2.0</li><li>Classmate from 1.3.0 to
1.3.1</li><li>Chunk from 3.0.1 to 3.1.2</li><li>Drools from 6.2.0.Final to
6.3.0.Final</li><li>EHCache from 2.10.0 to 2.10.1</li><li>Elasticsearch from
1.7.3 to 2.0.0</li><li>Embedded Mongodb from 1.50.0 to
1.50.2</li><li>Facebook4j from 2.3.1 to 2.4.2</li><li>GAE from 1.9.26 to
1.9.32</li><li>Google Gson from 2.4 to 2.61</li><li>Hazelcast from 3.5.2 to
3.6</li><li>Infinispan from 8.0.1.Final to 8.1.2.Final</li><li>Jackson from
2.6.3 to 2.7.1</li><li>Jboss Xnio from 3.3.1.Final to 3.3.4.Final</li><li>Jboss
Weld from 2.3.0.Final to 2.3.3.Final</li><li>Jbpm from 6.
2.0.Final to 6.3.0.Final</li><li>Jgit from <span
class="blob-code-inner">4.1.<span class="x x-first
x-last">0.201509280440</span>-r</span> to <span
class="blob-code-inner">4.1.<span class="x x-first
x-last">1.201511131810</span>-r</span></li><li>Joda-time from 2.8.2 to
2.9.1</li><li>Json-path from 2.0.0 to 2.1.0</li><li>Jt400 from 8.6 to
8.7</li><li>Kie from 6.2.0.Final to 6.3.0.Final</li><li>Maven Exec plugin from
1.2.1 to 1.4.0</li><li>Mongodb Java driver from 3.0.4 to 3.2.0</li><li>Mvel
from 2.2.6.Final to 2.2.7.Final</li><li>Ognl from 3.1 to 3.1.1</li><li>Olingo
from 2.0.4 to 2.0.5</li><li>Optaplanner from 6.2.0.Final to
6.3.0.Final</li><li>Pax-exam from 4.6.0 to 4.8.0</li><li>Spring 4.1.x to
4.2.x</li><li>Spring-Boot 1.2.x to 1.3.x</li><li>Spring Integration 2.x to
4.x</li><li>slf4j-api 1.6.x to 1.7.x</li><li>Undertow from 1.3.3.Final to
1.3.7.Final</li><li>Vertx from 3.1.0 to 3.2.0</li><li>Zookeeper from 3.4.6 to
3.4.7</li></ul><h2 id="Camel2.17.0Release-Importantchangestocons
iderwhenupgrading">Important changes to consider when
upgrading</h2><ul><li><strong>This is the last release that will support Java
1.7. Releases after this is expected to require Java
1.8+. </strong></li><li>Some changes in <a shape="rect"
href="rest-dsl.html">Rest DSL</a> to adjust naming and types to the
Swagger Spec 2.0</li><li>Any custom component that supports suspension in
doSuspend/doResume should implement the new <code>Suspendable</code>
marker interface, so Camel knows there is custom logic for suspension in the
component.</li><li>Exchange and Message only output id in their toString method
to avoid outputting any message details such as sensitive details from message
bodies.</li><li>Removed camel-hbase as Karaf feature as it did not really work
well in OSGi</li><li>Upgraded camel-hbase to Hadoop 2.x and HBase
1.1.x</li><li>camel-infinispan requires Java 8.</li><li>camel-mustache requires
Java 8.</li><li>Support for Spring 4.0.x is deprecated. Support
for Spring 3.x is being <strong>removed</strong> in the next
release.</li><li>Support for Karaf 2.x and 3.x is deprecated. And removed in
next release, where Karaf 4.x onwards is only supported.</li><li>camel-jetty8
is deprecated and being removed in next release.</li><li>Moved some Camel
tooling related dependencies (such as maven/plexus) from the Camel Parent BOM
to the tooling BOM (to have them separated).</li><li>camel-amqp do not support
0.9 anymore. </li><li>camel-spring-integration feature has been removed
from the Camel karaf.</li><li>The <a shape="rect"
href="mail.html">Mail</a> component now requires to configure to, cc, and bcc
using lower case keys, eg [email protected], instead of <a shape="rect"
class="external-link" href="mailto:[email protected]"
rel="nofollow">[email protected]</a> as previously.</li><li>The <a
shape="rect" href="file2.html">File</a> consumer no longer probe the file
content by default. See the option <code>probeContentType
</code> for more details.</li><li>If using <a shape="rect"
href="bean.html">Bean</a> or <a shape="rect"
href="class.html">Class</a> component and specifying additional parameters
in the endpoint uri to configure on the bean, then these options should now be
prefixed with bean., eg <code>foo=123</code> is now
<code>bean.foo=123</code>.</li><li>The <a shape="rect"
href="twitter.html">Twitter</a> delay option is changed from seconds to milli
seconds by default, eg 10 should be 10000 to indicate 10 seconds. This is
aligned how other components with delay option behaves. </li><li>The
options <code>attributeNames</code>
and <code>messageAttributeNames</code> on <a shape="rect"
href="aws-sqs.html">AWS-SQS</a> is changed to a string type where you can
separate multiple values using comma. Before the type was a Collection which
was much harder to configure in the Camel uris.</li><li>The <a
shape="rect" href="hbase.html">hbase</a> compone
nt now require row mapping from the endpoint uri to be prefixed with <code
style="line-height: 1.42857;">row.</code> as prefix.<br
clear="none">Before:
<code>family=info&qualifier=firstName&family2=birthdate&qualifier2=year</code>. After: <code>row.family=info&row.qualifier=firstName&row.family2=birthdate&row.qualifier2=year</code>.</li><li>As
part of the <a shape="rect" href="cdi.html">Camel CDI</a> component
refactoring, <em>DeltaSpike</em> is not used anymore for the sourcing of
the configuration properties. This new version of the component is agnostic to
any configuration sourcing mechanism and delegates that concern to the
application so that it can declare a
custom <code>PropertiesComponent</code> bean whose sourcing is
tailored to its need. <em>DeltaSpike</em> can still be used by the application
by declaring a <code>PropertiesComponent</code> bean configured with
a <code>PropertiesParser</code> relyin
g on <em>DeltaSpike</em>. See
the <code>camel-example-cdi-properties</code> example for more
details.</li></ul><h2 id="Camel2.17.0Release-GettingtheDistributions">Getting
the Distributions</h2><h3 id="Camel2.17.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.apac
he.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 syst
em 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.17.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.17.0Release-GettingtheBinariesusingMaven
2">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">
+<div class="wiki-content maincontent"><h1
id="Camel2.17.0Release-Camel2.17.0release(currentlyinprogress)">Camel 2.17.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"> </div><h2
id="Camel2.17.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>The component documentation generated from
the source code has been double checked to be up to date and include all the
options the endpoints supports.</li><li><a shape="rect" href="tools.html">Camel
commands</a> for <a shape="rect" href="spring-b
oot.html">Spring Boot</a></li><li>Many improvements to Camel <a
shape="rect" href="kura.html">Kura</a></li><li>Added transacted option
to <a shape="rect" href="sql-component.html">SQL Component</a> when used
as a consumer in a transacted route.</li><li>Added support for UPDATE operation
to <a shape="rect"
href="elasticsearch.html">ElasticSearch</a>.</li><li>Allow to reuse existing
configured Elasticsearch Client on the <a shape="rect"
href="elasticsearch.html">ElasticSearch</a> component, instead of creating a
client per endpoint. </li><li>The <code>include</code>
and <code>exclude</code> options on <a shape="rect"
href="file2.html">File2</a> and <a shape="rect" href="ftp.html">FTP</a>
endpoints is now case in-sensitive out of the box.</li><li>Resource based
component such as <a shape="rect" href="xslt.html">XSLT</a>, <a
shape="rect" href="velocity.html">Velocity</a> etc can load the resource
file from the <a shape="re
ct" href="registry.html">Registry</a> by using <code>ref:</code> as
prefix.</li><li><span>Upgraded camel-amqp to the latest qpid-jms-client (also
AMQP < 1.0 is not supported anymore).</span></li><li><span>Many improvements
to Camel <a shape="rect" href="amqp.html">AMQP</a>
component.</span></li><li><span>The <a shape="rect"
href="metrics-component.html">Metrics Component</a> allows to capture <a
shape="rect" href="message-history.html">Message History</a> performance
statistics with
the <code>MetricsMessageHistoryFactory </code></span></li><li>Reduced
the number of mbeans enlisted in the services tree, to only include mbeans that
has value to be managed.</li><li>The <a shape="rect"
href="elasticsearch.html">Elasticsearch Component</a> now supports
MultiGet operation</li><li>The <a shape="rect"
href="throttler.html">Throttler</a> has been improved to be more performant and
use a rolling window for time periods which gives a better flow.
</li><li>The <code>setHeader</code>
and <code>setExchangeProperty</code> allows to use a dynamic header key
using the <a shape="rect" href="simple.html">Simple</a> language if
the name of the key is a <a shape="rect"
href="simple.html">Simple</a> language expression.</li><li>Add collate
function to <a shape="rect" href="simple.html">Simple</a> language to make
it easier to split a message body into sub lists of a specified size. The
function is similar to the collate function from Groovy.</li><li>The <a
shape="rect" href="camel-run-maven-goal.html">Camel Run Maven Goal</a> is able
to auto detect if its a OSGi Blueprint or CDI project so end users no longer
have to explicit configure this on the plugin.</li><li><a shape="rect"
href="elasticsearch.html">Camel-Elasticsearch</a> now supports Multiget,
Multisearch and exists operation</li><li><a shape="rect"
href="git.html">Camel-Git</a> now supports Cherry-pick
operation</li><li>Stopping the 
<code>Main</code> class from JMX will now trigger shutdown of the Main
class/JVM also, as it does when hitting ctrl + c.</li><li>Added option to
skipFirst to the <a shape="rect" href="tokenizer.html">Tokenizer</a>
language to make it easy to skip the very first element, when for example
splitting a CSV file using the <a shape="rect"
href="splitter.html">Splitter</a> EIP.</li><li>The <a shape="rect"
href="rest-dsl.html">Rest DSL</a> now supports default values for query
parameters</li><li>The <a shape="rect" href="rest-dsl.html">Rest DSL</a>
now only binds from POJO to JSon/XML if the content-type is for json or xml.
This allows you to specify a custom content-type and omit the binding, such as
when having binary payloads.</li><li>Exchange and Message only output id in
their toString method to avoid outputting any message details such as sensitive
details from message bodies.</li><li>Camel <a shape="rect"
href="error-handler.html">Error Handler</a> no longer
log message body/header details when logging the <a shape="rect"
href="message-history.html">Message History</a>. This avoids logging
any sensitive details from message bodies.</li><li>Camel <a
shape="rect" href="exception-clause.html">Exception Clause</a> and <a
shape="rect" href="error-handler.html">Error Handler</a> now supports using a
custom <code>Processor</code> to be invoked right after an exception was
thrown using the new <strong>onExceptionOccurred</strong>
option.</li><li><a shape="rect" href="rabbitmq.html">RabbitMQ</a> consumer more
resilient to auto re-connect in case of connection failures</li><li>The <a
shape="rect" href="json.html">JSON</a> <code>camel-jackson</code> can be
used as a type converter to convert json to/from POJO and String/byte[] types,
if enabled.</li><li>The <a shape="rect" href="sql-component.html">SQL
Component</a> now supports loading the SQL queries from external files on the
classpath or file system, whe
re you can format the queries using newlines and
indenting.</li><li>The <a shape="rect" href="mail.html">Mail</a> consumer
allows to use an idempotent repository which allows to cluster consuming
from the same mailbox, and let the repository coordinate whether a mail message
is valid for the consumer to process.</li><li>Added support for completion
interval on the <a shape="rect" href="sjms-batch.html">SJMS Batch</a>
component, which allows to trigger batch completion in a fixed scheduled
interval.</li><li>The <a shape="rect" href="http.html">HTTP</a>
and <a shape="rect" href="http4.html">HTTP4</a> producers now support
the <code>disableStreamCache</code> option to allow to use the raw
response stream as the message body instead of wrapping using <a
shape="rect" href="stream-caching.html">Stream caching</a></li><li>The <a
shape="rect" href="cdi.html">Camel CDI</a> component has been improved to
better fit into the CDI programming model, cover a lar
ger set of containers, and provide these new features:<ul><li>The Camel events
from the <code>org.apache.camel.management.event</code> package (like
<code>CamelContextStartedEvent</code>) can be observed as CDI
events</li><li>The new CDI event Camel endpoint enable <span>CDI events to
be seamlessly consumed from (respectively produced by) Camel consumers
(respectively Camel producers)</span></li><li><span><span>CDI beans annotated
with the </span><code>@Converter</code><span> annotation are
automatically registered as type
converters</span></span></li><li><span><span>The CDI Camel contexts can
be properly customised programmatically in bean constructor
or <code>@PostConstruct</code> lifecycle
callback</span></span></li><li>Camel routes configured in
<code>RouteBuilder</code> beans are added before the corresponding Camel
contexts get started</li><li><span>CDI Camel contexts are now properly adapted
when deployed in OSGi containers and are registered as
OSGi services</span></li><li>Proper support of multiple Camel contexts across
all the features<span><br clear="none"></span></li></ul></li><li>The <a
shape="rect" href="xslt.html">XSLT</a> component now supports Saxon's <a
shape="rect" class="external-link"
href="http://www.saxonica.com/html/documentation/extensibility/integratedfunctions"
rel="nofollow" title="Follow link">integrated extension
functions</a>.</li><li>Added option <code>reuseChannel</code> to <a
shape="rect" href="netty4.html">Netty4</a> which allows to reuse existing
Channel when using a netty producer to call a server multiple times during
routing an Exchange.</li><li>Idempotent Repository now supports optional
serialized headers </li><li><a shape="rect" href="rest-dsl.html">Rest
DSL</a> adjusted to swagger spec 2.0 and <a shape="rect"
href="swagger-java.html">Swagger Java</a> as well.</li><li><a shape="rect"
href="rest-dsl.html">Rest DSL</a> allows to specify response headers as well.
</li><li><a shape="rect" href="rest-dsl.html">Rest DSL</a> is exposing the
REST services using all local IP address (eg 0.0.0.0) by default.</li><li><a
shape="rect" href="quartz2.html">Camel-quartz2</a> now supports customCalendar
to avoid specific range of dates (Holidays for example) in Scheduler and
Triggers.</li><li>Improved <a shape="rect" href="bean-language.html">Bean
Language</a> to be able to invoke static methods on pure static
classes.</li><li>When <a shape="rect" href="bean-language.html">Bean
Language</a> failed to invoke a method from an OGNL method chain (eg
invoke the following 3 methods "doFoo.doSomething.getBar") and a method
returned null which prevent further method invocation as that would cause a
NullPointerException. Now you have a more detailed exception message to better
explain this.</li></ul><p>Fixed these issues</p><ul><li>The <a
shape="rect" href="swagger-java.html">Swagger Java</a> now parses nested types
in the POJO model that has b
een annotated with the swagger api annotations to use in the schema api
model</li><li>Fixed <a shape="rect" href="rest-dsl.html">Rest DSL</a>
with apiContextPath fail to start if there are 2 ore more rest's in
use.</li><li>Paho component name is not limited to 4 characters
anymore.</li><li>Fixed <a shape="rect" href="spring-boot.html">Spring
Boot</a> not starting Camel routes if running in Spring Cloud.</li><li>Fixed an
issue with <a shape="rect" href="swagger-java.html">Swagger Java</a> using
api-docs could lead to api-doc route being added multiple times</li><li>Fixed a
few things missing in the generated swagger model when using <a
shape="rect" href="swagger-java.html">Swagger Java</a></li><li>Fixed
using <code>statement.xxx</code> options on the <a shape="rect"
href="jdbc.html">JDBC</a> consumer would only be used in first
poll.</li><li>Fixed  <a shape="rect"
href="http.html">HTTP</a> and <a shape="rect"
href="http4.html">HTTP4</
a> to keep trailing slash if provided in uri when calling remote HTTP
service.</li><li>Fixed <a shape="rect"
href="oncompletion.html">OnCompletion</a> to keep any caught exception stored
as property on the <code>Exchange</code> which allows to access that
information to know if there was an exception during routing.</li><li>Fixed an
issue with <a shape="rect" href="bean.html">Bean</a> component or <a
shape="rect" href="simple.html">Simple</a> language with OGNL method call,
would pick method with java.lang.Object type over a better suited method, when
the method is overloaded.</li><li>Fixed <code>camel-blueprint</code> to
wait for the bundles with the component and data-formats the <a
shape="rect" href="rest-dsl.html">Rest DSL</a> has been configured to use, are
available before starting Camel.</li><li>Fixed an issue with <a
shape="rect" href="error-handler.html">Error Handler</a> would log any
handled(true) exceptions.</li><li>Fixed a memory
leak if adding/removing routes using <a shape="rect"
href="idempotent-consumer.html">Idempotent Consumer</a> where the repository
would not be removed from the JMX registry when routes is
removed.</li><li>Fixed issue with <a shape="rect"
href="spring-boot.html">Spring Boot</a> would eager shutdown some Camel
resources like type converters, which spring-boot should let Camel handle the
lifecycle of these resources.</li><li>Fixed <a shape="rect"
href="cxfrs.html">CXFRS</a> using simple binding mode would use the
content-length header from the incoming message in the response, instead of
calculating the length based on the output message body.</li><li>Fixed an issue
with <a shape="rect" href="simple.html">Simple</a> if starting the
expression with <code>file:</code> could fail with an
error.</li><li>Fixed <a shape="rect"
href="idempotent-consumer.html">Idempotent Consumer</a> would not propagate
exception thrown from <code>IdempotentRepository</code>
to Camel's <a shape="rect" href="error-handler.html">Error Handler</a>
such as <code>onException</code><code><br
clear="none"></code></li></ul><h3 id="Camel2.17.0Release-New">New <a
shape="rect" href="enterprise-integration-patterns.html">Enterprise Integration
Patterns</a></h3><h3 id="Camel2.17.0Release-New.1">New <a shape="rect"
href="components.html">Components</a></h3><ul><li><a shape="rect"
href="aws-kinesis.html">camel-aws</a><span style="line-height: 1.42857;"> - AWS
kinesis streams component added</span></li><li><a shape="rect"
href="aws-ddbstream.html">camel-aws</a> - DynamoDB streams component
added</li><li><a shape="rect" href="braintree.html">camel-braintree</a> -
for interacting with Braintree Payments.</li><li><a shape="rect"
href="etcd.html">camel-etcd</a><span style="line-height: 1.42857;"> -
Integrating Camel with </span><a shape="rect" class="external-link"
href="https://coreos.com/etcd/" style="line-height: 1.42857;"
rel="nofollow">Etcd</a
><span style="line-height: 1.42857;"> key value
>store</span></li><li>camel-kubernetes - Integrates Camel with
>Kubernetes</li><li><a shape="rect" href="ignite.html">camel-ignite</a> - for
>working with Apache Ignite.</li><li>camel-ironmq - messaging with the <a
>shape="rect" class="external-link" href="http://www.iron.io/platform/ironmq/"
>rel="nofollow">IronMQ</a> cloud messaging.</li><li><a shape="rect"
>href="jcache.html">camel-jcache</a><a shape="rect"
>href="mllp.html"><span> - support </span></a><a shape="rect"
>class="external-link" href="https://github.com/jsr107/jsr107spec"
>rel="nofollow">JCache / JSR107</a><a shape="rect"
>href="mllp.html"><span> caching.</span></a></li><li><a shape="rect"
>href="mllp.html">camel-mllp</a> - <span style="color: rgb(0,0,0);">for
>working with the HL7 MLLP protocol. This is an alternative to <a
>shape="rect" href="hl7.html">HL7</a> component.</span></li><li><span
>style="color: rgb(0,0,0);">camel-nats - for interacting with
Nats messaging platform</span></li><li><a shape="rect"
href="apache-spark.html">camel-spark</a> - bridges Apache Spark computations
with Camel endpoints</li><li><a shape="rect"
href="sql-stored-procedure.html">camel-sql</a> - Now supports calling stored
procedures using the new <a shape="rect"
href="sql-stored-procedure.html">sql-stored component</a>.</li></ul><h3
id="Camel2.17.0Release-NewDSL">New DSL</h3><h3
id="Camel2.17.0Release-NewAnnotations">New Annotations</h3><h3
id="Camel2.17.0Release-NewDataFormats">New <a shape="rect"
href="data-format.html">Data Formats</a></h3><ul><li><a shape="rect"
href="mime-multipart.html">MIME-Multipart</a> - mime based data
format.</li><li><a shape="rect" href="lzf-data-format.html">LZF Data Format</a>
- LZF based data format. </li></ul><h3 id="Camel2.17.0Release-New.2">New
<a shape="rect" href="languages.html">Languages</a></h3><h3
id="Camel2.17.0Release-New.3">New <a shape="rect"
href="examples.html">Examples</a></h3><ul><li>camel-example-
cdi-metrics - illustrates the integration between Camel, Dropwizard Metrics
and CDI.</li><li>camel-example-cdi-properties - <span>illustrates the
integration between Camel, DeltaSpike and CDI for configuration
properties.</span></li><li><span>camel-example-cdi-osgi - a<span> CDI
application using the SJMS component that can be executed inside an OSGi
container using PAX
CDI.</span></span></li><li><span>camel-example-cdi-rest-servlet
- <span>illustrates the Camel REST DSL being used in a Web application
that uses CDI as dependency injection
framework</span></span></li><li>camel-example-spring-boot-metrics - showing a
Camel spring-boot application that report metrics to Graphite. Requires
Graphite running on your network.</li><li>camel-example-widget-gadget-cdi - The
Widget and Gadget use-case from the EIP book implemented in Java with CDI
dependency Injection.</li><li>camel-example-widget-gadget-java - The Widget and
Gadget use-case from the EIP book implemented in pla
in old Java Main without any kind of <em>application
server</em>.</li><li>camel-example-widget-gadget-xml - The Widget and Gadget
use-case from the EIP book implemented in Spring XML without any Java code or
any kind of <em>application server</em>.</li></ul><h3
id="Camel2.17.0Release-New.4">New <a shape="rect"
href="tutorials.html">Tutorials</a></h3><h2
id="Camel2.17.0Release-APIbreaking">API breaking</h2><ul><li>As part of the <a
shape="rect" href="cdi.html">Camel CDI</a> component refactoring:<ul><li>The
<code>@ContextName</code> qualifier does not have a default empty value
anymore as it is irrelevant</li><li>The CdiPropertiesComponent class
has been removed, the standard PropertiesComponent can be used
instead</li></ul></li></ul><h2 id="Camel2.17.0Release-KnownIssues">Known
Issues</h2><h2 id="Camel2.17.0Release-Dependencyupgrades">Dependency
upgrades</h2><ul><li>Apache Cassandra from 2.1.8 to 2.2.2</li><li>Apache
Deltaspike from 1.5.1 to 1.5.2</li><
li>Apache Gora from 0.6 to 0.6.1</li><li>Apache Jackrabbit from 2.11.0 to
2.11.3</li><li>Apache Kafka from 0.8.2.2 to 0.9.0.0</li><li>Apache Lucene from
4.10.4 to 5.2.1</li><li>Apache Mina from 2.0.9 to 2.0.10</li><li>Apache OpenEjb
from 4.7.2 to 4.7.3</li><li>Apache Solr from 4.10.4 to 5.2.1</li><li>Aws SDK
Java to version 1.10.37</li><li>Atmosphere from <span
class="blob-code-inner">2.4.0</span> to 2.4.1.4</li><li>Cassandra driver from
2.1.8 to 2.1.9</li><li>Cassandra-unit from 2.1.9.2 to 2.2.2.1</li><li>Cglib
from 3.1 to 3.2.0</li><li>Classmate from 1.3.0 to 1.3.1</li><li>Chunk from
3.0.1 to 3.1.2</li><li>Drools from 6.2.0.Final to 6.3.0.Final</li><li>EHCache
from 2.10.0 to 2.10.1</li><li>Elasticsearch from 1.7.3 to
2.0.0</li><li>Embedded Mongodb from 1.50.0 to 1.50.2</li><li>Facebook4j from
2.3.1 to 2.4.2</li><li>GAE from 1.9.26 to 1.9.32</li><li>Google Gson from 2.4
to 2.61</li><li>Hazelcast from 3.5.2 to 3.6</li><li>Infinispan from 8.0.1.Final
to 8.1.2.Final</li><li>Jackson fr
om 2.6.3 to 2.7.1</li><li>Jboss Xnio from 3.3.1.Final to
3.3.4.Final</li><li>Jboss Weld from 2.3.0.Final to 2.3.3.Final</li><li>Jbpm
from 6.2.0.Final to 6.3.0.Final</li><li>Jgit from <span
class="blob-code-inner">4.1.<span class="x x-first
x-last">0.201509280440</span>-r</span> to <span
class="blob-code-inner">4.1.<span class="x x-first
x-last">1.201511131810</span>-r</span></li><li>Joda-time from 2.8.2 to
2.9.1</li><li>Json-path from 2.0.0 to 2.1.0</li><li>Jt400 from 8.6 to
8.7</li><li>Kie from 6.2.0.Final to 6.3.0.Final</li><li>Maven Exec plugin from
1.2.1 to 1.4.0</li><li>Mongodb Java driver from 3.0.4 to 3.2.0</li><li>Mvel
from 2.2.6.Final to 2.2.7.Final</li><li>Ognl from 3.1 to 3.1.1</li><li>Olingo
from 2.0.4 to 2.0.5</li><li>Optaplanner from 6.2.0.Final to
6.3.0.Final</li><li>Pax-exam from 4.6.0 to 4.8.0</li><li>Spring 4.1.x to
4.2.x</li><li>Spring-Boot 1.2.x to 1.3.x</li><li>Spring Integration 2.x to
4.x</li><li>slf4j-api 1.6.x to 1.7.x</li><li>Undertow from 1.3.3.Final to 1.
3.7.Final</li><li>Vertx from 3.1.0 to 3.2.0</li><li>Zookeeper from 3.4.6 to
3.4.7</li></ul><h2
id="Camel2.17.0Release-Importantchangestoconsiderwhenupgrading">Important
changes to consider when upgrading</h2><ul><li><strong>This is the last release
that will support Java 1.7. Releases after this is expected to require Java
1.8+. </strong></li><li>Some changes in <a shape="rect"
href="rest-dsl.html">Rest DSL</a> to adjust naming and types to the
Swagger Spec 2.0</li><li>Any custom component that supports suspension in
doSuspend/doResume should implement the new <code>Suspendable</code>
marker interface, so Camel knows there is custom logic for suspension in the
component.</li><li>Exchange and Message only output id in their toString method
to avoid outputting any message details such as sensitive details from message
bodies.</li><li>Removed camel-hbase as Karaf feature as it did not really work
well in OSGi</li><li>Upgraded camel-hbase to Hadoop 2.x and HBase 1.1.
x</li><li>camel-infinispan requires Java 8.</li><li>camel-mustache requires
Java 8.</li><li>Support for Spring 4.0.x is deprecated. Support for Spring 3.x
is being <strong>removed</strong> in the next release.</li><li>Support for
Karaf 2.x and 3.x is deprecated. And removed in next release, where Karaf 4.x
onwards is only supported.</li><li>camel-jetty8 is deprecated and being removed
in next release.</li><li>Moved some Camel tooling related dependencies (such as
maven/plexus) from the Camel Parent BOM to the tooling BOM (to have them
separated).</li><li>camel-amqp do not support 0.9
anymore. </li><li>camel-spring-integration feature has been removed from
the Camel karaf.</li><li>The <a shape="rect" href="mail.html">Mail</a>
component now requires to configure to, cc, and bcc using lower case keys, eg
[email protected], instead of <a shape="rect" class="external-link"
href="mailto:[email protected]" rel="nofollow">[email protected]</a> as
previously.</li><li>The <a s
hape="rect" href="file2.html">File</a> consumer no longer probe the file
content by default. See the option <code>probeContentType</code> for more
details.</li><li>If using <a shape="rect"
href="bean.html">Bean</a> or <a shape="rect"
href="class.html">Class</a> component and specifying additional parameters
in the endpoint uri to configure on the bean, then these options should now be
prefixed with bean., eg <code>foo=123</code> is now
<code>bean.foo=123</code>.</li><li>The <a shape="rect"
href="twitter.html">Twitter</a> delay option is changed from seconds to milli
seconds by default, eg 10 should be 10000 to indicate 10 seconds. This is
aligned how other components with delay option behaves. </li><li>The
options <code>attributeNames</code>
and <code>messageAttributeNames</code> on <a shape="rect"
href="aws-sqs.html">AWS-SQS</a> is changed to a string type where you can
separate multiple values using comma. Before the type
was a Collection which was much harder to configure in the Camel
uris.</li><li><a shape="rect" href="rest-dsl.html">Rest DSL</a> is exposing the
REST services using all local IP address (eg 0.0.0.0) by default, instead of
the local IP address of the host.</li><li>The <a shape="rect"
href="hbase.html">hbase</a> component now require row mapping from the endpoint
uri to be prefixed with <code style="line-height: 1.42857;">row.</code> as
prefix.<br clear="none">Before:
<code>family=info&qualifier=firstName&family2=birthdate&qualifier2=year</code>. After: <code>row.family=info&row.qualifier=firstName&row.family2=birthdate&row.qualifier2=year</code>.</li><li>As
part of the <a shape="rect" href="cdi.html">Camel CDI</a> component
refactoring, <em>DeltaSpike</em> is not used anymore for the sourcing of
the configuration properties. This new version of the component is agnostic to
any configuration sourcing mechanism and delegates that concer
n to the application so that it can declare a
custom <code>PropertiesComponent</code> bean whose sourcing is
tailored to its need. <em>DeltaSpike</em> can still be used by the application
by declaring a <code>PropertiesComponent</code> bean configured with
a <code>PropertiesParser</code> relying on <em>DeltaSpike</em>. See
the <code>camel-example-cdi-properties</code> example for more
details.</li></ul><h2 id="Camel2.17.0Release-GettingtheDistributions">Getting
the Distributions</h2><h3 id="Camel2.17.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="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></d
iv><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.17.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" c
lass="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.g
z</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.17.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[<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-core</artifactId>
Modified: websites/production/camel/content/rest-dsl.html
==============================================================================
--- websites/production/camel/content/rest-dsl.html (original)
+++ websites/production/camel/content/rest-dsl.html Sun Feb 28 13:18:43 2016
@@ -244,7 +244,7 @@ public class UserPojo {
}
]]></script>
-</div></div><p>By having the JAXB annotations the POJO supports both json and
xml bindings.</p><h3 id="RestDSL-ConfiguringRestDSL"><span style="line-height:
1.5625;">Configuring Rest DSL</span></h3><p>The Rest DSL allows to configure
the following options using a builder style</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh">Option</th><th colspan="1" rowspan="1"
class="confluenceTh">Default</th><th colspan="1" rowspan="1"
class="confluenceTh">Description</th></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>component</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The Camel Rest component to use for the REST transport,
such as restlet, spark-rest. If no component has been explicit configured, then
Camel will lookup if there is a Camel component that integrates with the Rest
DSL, or if a <code>org.apache.camel.spi.RestConsumerFa
ctory</code> is registered in the registry. If either one is found, then
that is being used.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>scheme</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>http</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The scheme to use for exposing the REST service.
Usually http or https is supported</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>hostname</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The hostname to use for exposing the REST
service.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>port</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The port number to use for exposing the REST service.
Notice if you use servlet component then the port number configured here does
not apply, as the port number in use is
the actual port number the servlet component is using. eg if using Apache
Tomcat its the tomcat http port, if using Apache Karaf its the HTTP service in
Karaf that uses port 8181 by default etc. Though in those situations setting
the port number here, allows tooling and JMX to know the port number, so its
recommended to set the port number to the number that the servlet engine
uses.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>contextPath</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Sets a leading context-path the REST services will be
using. This can be used when using components such as <a shape="rect"
href="servlet.html">SERVLET</a> where the deployed web application is deployed
using a context-path.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>restHostNameResolver</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>localHostName</p></td><td colspan=
"1" rowspan="1" class="confluenceTd"><p>If no hostname has been explicit
configured, then this resolver is used to compute the hostname the REST service
will be using. The resolver supports <code>localHostName</code> or
<code>localIp</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>bindingMode</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>off</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Whether binding is in use. See further above for more
details.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>skipBindingOnErrorCode</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.14.1</strong>: Whether to skip binding
on output if there is a custom HTTP error code header. This allows to build
custom error messages that do not bind to json / xml etc, as success messages
otherwise will do. See further below for an example.</p></td>
</tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>enableCORS</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.14.1:</strong> Whether to enable CORS
headers in the HTTP response.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>jsonDataFormat</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Name of specific json data format to use. By default
<code>json-jackson</code> will be used. <strong>Important:</strong> This option
is only for setting a custom name of the data format, not to refer to an
existing data format instance. <strong>Notice:</strong> Currently Jackson is
what we recommend and are using for testing.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>xmlDataFormat</p></td><td colspan="1"
rowspan="1" class="confluenceTd"> </td><td colspan="1" rowspan="1" clas
s="confluenceTd"><p>Name of specific XML data format to use. By default
<code>jaxb</code> will be used. <strong>Important:</strong><span> This option
is only for setting a custom name of the data format, not to refer to an
existing data format instance. </span><strong>Notice:</strong> Currently only
<code>jaxb</code> is supported.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>componentProperty</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Allows to configure as many additional properties. This
is used to configure component specific options such as for <a
shape="rect" href="restlet.html">Restlet</a> / <a shape="rect"
href="spark-rest.html">Spark-Rest</a> etc. T<span>he options value can use
the # notation to refer to a bean to lookup in the </span><span> </span><a
shape="rect"
href="registry.html">Registry</a><span> </span></p></td></tr><tr><td
colspan="1" r
owspan="1" class="confluenceTd"><p>endpointProperty</p></td><td colspan="1"
rowspan="1" class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span>Allows to configure as many additional
properties. This is used to configure endpoint specific options for
<span> </span><a shape="rect"
href="restlet.html">Restlet</a><span> / </span><a shape="rect"
href="spark-rest.html">Spark-Rest</a><span> etc. T<span>he options value
can use the # notation to refer to a bean to lookup in the
</span><span> </span><a shape="rect"
href="registry.html">Registry</a><span> </span></span></span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>consumerProperty</p></td><td
colspan="1" rowspan="1" class="confluenceTd"> </td><td colspan="1"
rowspan="1" class="confluenceTd"><p><span>Allows to configure as many
additional properties. This is used to configure consumer specific options for
</span><span> </span><a shape="rec
t" href="restlet.html">Restlet</a><span> / </span><a shape="rect"
href="spark-rest.html">Spark-Rest</a><span> etc. T<span>he options value
can use the # notation to refer to a bean to lookup in the
</span><span> </span><a shape="rect"
href="registry.html">Registry</a><span> </span></span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>dataFormatProperty</p></td><td
colspan="1" rowspan="1" class="confluenceTd"> </td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Allows to configure as many additional
properties. This is used to configure the data format specific options. For
example set property prettyPrint to true to have json outputted in pretty mode.
From <strong>Camel 2.14.1</strong> onwards the keys can be prefixed with
either</p><ul style="list-style-type:
square;"><li><p>json.in.</p></li><li><p>json.out.</p></li><li><p>xml.in.</p></li><li><p>xml.out.</p></li></ul><p>to
denote that the option is only for either JSON or XM
L data format, and only for either the in or the out going. For example a key
with value "xml.out.mustBeJAXBElement" is only for the XML data format for the
outgoing. A key without a prefix is a common key for all situations.</p><p>From
<strong>Camel 2.17</strong> onwards the options value can use the # notation to
refer to a bean to lookup in the <a shape="rect"
href="registry.html">Registry</a></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>corsHeaderProperty</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Allows to configure custom CORS
headers.</p></td></tr></tbody></table></div><p> </p><p><span
style="line-height: 1.4285715;">For example to configure to use the spark-rest
component on port 9091, then we can do as follows</span></p><div class="code
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>By having the JAXB annotations the POJO supports both json and
xml bindings.</p><h3 id="RestDSL-ConfiguringRestDSL"><span style="line-height:
1.5625;">Configuring Rest DSL</span></h3><p>The Rest DSL allows to configure
the following options using a builder style</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh">Option</th><th colspan="1" rowspan="1"
class="confluenceTh">Default</th><th colspan="1" rowspan="1"
class="confluenceTh">Description</th></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>component</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The Camel Rest component to use for the REST transport,
such as restlet, spark-rest. If no component has been explicit configured, then
Camel will lookup if there is a Camel component that integrates with the Rest
DSL, or if a <code>org.apache.camel.spi.RestConsumerFa
ctory</code> is registered in the registry. If either one is found, then
that is being used.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>scheme</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>http</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The scheme to use for exposing the REST service.
Usually http or https is supported</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>hostname</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The hostname to use for exposing the REST
service.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>port</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The port number to use for exposing the REST service.
Notice if you use servlet component then the port number configured here does
not apply, as the port number in use is
the actual port number the servlet component is using. eg if using Apache
Tomcat its the tomcat http port, if using Apache Karaf its the HTTP service in
Karaf that uses port 8181 by default etc. Though in those situations setting
the port number here, allows tooling and JMX to know the port number, so its
recommended to set the port number to the number that the servlet engine
uses.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>contextPath</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Sets a leading context-path the REST services will be
using. This can be used when using components such as <a shape="rect"
href="servlet.html">SERVLET</a> where the deployed web application is deployed
using a context-path.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>restHostNameResolver</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1" row
span="1" class="confluenceTd"><p>If no hostname has been explicit configured,
then this resolver is used to compute the hostname the REST service will be
using. The resolver supports <code>allLocalIp</code> (<strong>Camel
2.17</strong>), <code>localHostName</code> or <code>localIp</code>. The default
value for Camel 2.16.x or older is localHostName, and allLocalIp from Camel
2.17 onwards.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>bindingMode</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>off</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Whether binding is in use. See further above for more
details.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>skipBindingOnErrorCode</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.14.1</strong>: Whether to skip binding
on output if there is a custom HTTP error code header. This allow
s to build custom error messages that do not bind to json / xml etc, as
success messages otherwise will do. See further below for an
example.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>enableCORS</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.14.1:</strong> Whether to enable CORS
headers in the HTTP response.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>jsonDataFormat</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Name of specific json data format to use. By default
<code>json-jackson</code> will be used. <strong>Important:</strong> This option
is only for setting a custom name of the data format, not to refer to an
existing data format instance. <strong>Notice:</strong> Currently Jackson is
what we recommend and are using for testing.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>xmlDataFormat</p></td><td colspan="1"
rowspan="1" class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Name of specific XML data format to use. By default
<code>jaxb</code> will be used. <strong>Important:</strong><span> This option
is only for setting a custom name of the data format, not to refer to an
existing data format instance. </span><strong>Notice:</strong> Currently only
<code>jaxb</code> is supported.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>componentProperty</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Allows to configure as many additional properties. This
is used to configure component specific options such as for <a
shape="rect" href="restlet.html">Restlet</a> / <a shape="rect"
href="spark-rest.html">Spark-Rest</a> etc. T<span>he options value can use
the # notation to refer to a b
ean to lookup in the </span><span> </span><a shape="rect"
href="registry.html">Registry</a><span> </span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>endpointProperty</p></td><td
colspan="1" rowspan="1" class="confluenceTd"> </td><td colspan="1"
rowspan="1" class="confluenceTd"><p><span>Allows to configure as many
additional properties. This is used to configure endpoint specific options for
<span> </span><a shape="rect"
href="restlet.html">Restlet</a><span> / </span><a shape="rect"
href="spark-rest.html">Spark-Rest</a><span> etc. T<span>he options value
can use the # notation to refer to a bean to lookup in the
</span><span> </span><a shape="rect"
href="registry.html">Registry</a><span> </span></span></span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>consumerProperty</p></td><td
colspan="1" rowspan="1" class="confluenceTd"> </td><td colspan="1"
rowspan="1" class="confluenceTd"><p><s
pan>Allows to configure as many additional properties. This is used to
configure consumer specific options for </span><span> </span><a
shape="rect" href="restlet.html">Restlet</a><span> / </span><a
shape="rect" href="spark-rest.html">Spark-Rest</a><span> etc. T<span>he
options value can use the # notation to refer to a bean to lookup in the
</span><span> </span><a shape="rect"
href="registry.html">Registry</a><span> </span></span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>dataFormatProperty</p></td><td
colspan="1" rowspan="1" class="confluenceTd"> </td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Allows to configure as many additional
properties. This is used to configure the data format specific options. For
example set property prettyPrint to true to have json outputted in pretty mode.
From <strong>Camel 2.14.1</strong> onwards the keys can be prefixed with
either</p><ul style="list-style-type: square;"><li><p>js
on.in.</p></li><li><p>json.out.</p></li><li><p>xml.in.</p></li><li><p>xml.out.</p></li></ul><p>to
denote that the option is only for either JSON or XML data format, and only
for either the in or the out going. For example a key with value
"xml.out.mustBeJAXBElement" is only for the XML data format for the outgoing. A
key without a prefix is a common key for all situations.</p><p>From
<strong>Camel 2.17</strong> onwards the options value can use the # notation to
refer to a bean to lookup in the <a shape="rect"
href="registry.html">Registry</a></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>corsHeaderProperty</p></td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Allows to configure custom CORS
headers.</p></td></tr></tbody></table></div><p> </p><p><span
style="line-height: 1.4285715;">For example to configure to use the spark-rest
component on port 9091, then we can do as follows</span></p><d
iv class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[restConfiguration().component("spark-rest").port(9091).componentProperty("foo",
"123");]]></script>
</div></div><p><span style="line-height: 1.4285715;"><br
clear="none"></span></p><p><span style="line-height: 1.4285715;">And with XML
DSL</span></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[<restConfiguration
component="spark-rest" port="9091">
<componentProperty key="foo" value="123"/>
</restConfiguration>]]></script>