Author: buildbot
Date: Sun Mar 20 11:18:34 2016
New Revision: 983238
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/swagger-java.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 Mar 20
11:18:34 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>Reworked the Apache Karaf feature to
not install camel-spring by default. The problem is cam
el-spring is using spring-dm which is only supports Spring 3.x, and therefore
Spring 3.x was installed and used. All the Camel features that uses Spring JARs
are now using Spring 4.x.</li><li><a shape="rect" href="tools.html">Camel
commands</a> for <a shape="rect" href="spring-boot.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="rec
t" 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="rect" 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-jack
son</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, where 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 larger
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>@PostConstruc
t</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><li>A new <a shape="rect"
href="cdi-testing.html">Camel CDI Test</a> module is available to ease testing
of Camel CDI applications</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><li><a shape="rect"
href="jaxb.html">JAXB</a> data format and type converter now supports
converting from XML to POJO for classes that are using ObjectFactory classes
instead of XmlRootElement annotations.</li><li>The <a shape="rect"
href="kafka.html">Kafka</a> component has been migrated to use the Java Kafka
client instead of Scala. As such there may be migration efforts or code changes
that can affect users upgrading.</li><li>The <a shape="rect"
href="loop.html">Loop</a> EIP now allows to run in a while loop mode, so it
loops until the predicate returns false.</li><li>Improved <a shape="rect"
href="rest-dsl.html">Rest DSL</a> when CORS enabled to process and return the
configured CORS headers in the rest-dsl
in all the supported <a shape="rect" href="rest-dsl.html">Rest DSL</a>
components.</li><li>The <code>options</code> verb in the <a
shape="rect" href="rest-dsl.html">Rest DSL</a> has been deprecated and are not
in use if CORS is enabled.</li><li>The <a shape="rect"
href="logeip.html">LogEIP</a> allows to use a global configured log name,
instead of using route id as the logger name</li><li>A
new <code>camel-spring-boot-starter</code> module that is a Spring-Boot
starter module like any other starter modules.</li><li>Allow to run
Camel <a shape="rect" href="spring-boot.html">Spring Boot</a> applications
and keep the JVM running in a easy way by
setting <code>camel.springboot.main-run-controller = true</code>
option.</li><li>The <a shape="rect" href="sql-component.html">SQL
Component</a> supports using SQL IN queries in the producer where the number of
values in the IN clause is dynamic from the current exchange.</li></ul><p>Fixed
these iss
ues</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 DSL</a>
with apiContextPath fail to start if there are 2 ore more rest's in
use.</li><li>Fixed <a shape="rect" href="rest-dsl.html">Rest DSL</a>
with <a shape="rect" href="swagger-java.html">Swagger Java</a> to output
the swagger API with property placeholder resolved to actual used
values.</li><li><a shape="rect" href="paho.html">Paho</a> 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 f
ew 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 ove
rloaded.</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, inst
ead 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="spring-boot.html">Spring
Boot</a> may report spring type converter errors if <a shape="rect"
href="stream-caching.html">Stream caching</a> is enabled.</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="cdi-testing.html">camel-test-cdi</a> - ease testing of Camel CDI
applications</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><li><a shape="rect"
href="yaml-data-format.html">YAML Data Format</a> - YAML based data
format.</li><li>Hessian - Caucho Hessian 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 t
he 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-cdi-test - demonstrates the
testing features that are provided as part of the integration between Camel and
CDI.<span><span><br
clear="none"></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 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><ul><li>camel-guice cannot install in Karaf/ServiceMix</li></ul><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>Ha
zelcast 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-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>When installing the camel feature in Apache Karaf,
then camel-spring is not longer installed by default. You need to install
camel-spring feature if using spring-dm on Karaf. </li><li>Reworked the
Apache Karaf feature to not install camel-spring by default. The problem is
camel-spring is using spring-dm which is only supports Spring 3.x, and
therefore Spring 3.x was installed and used. All the Camel features that uses
Spring JARs are now using Spring 4.x.</li><li>Removed camel-docker from karaf
features as it does not work in OSGi</li><l
i>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-jet
ty8 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 endpoi
nt 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 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> relying on <em>DeltaSpike</em>. S
ee the <code>camel-example-cdi-properties</code> example for more
details.</li><li>The <a shape="rect" href="kafka.html">Kafka</a> component
has been migrated to use the Java Kafka client instead of Scala. As such there
may be migration efforts or code changes that can affect users
upgrading.</li><li>Improved <a shape="rect" href="rest-dsl.html">Rest
DSL</a> when CORS enabled to process and return the configured CORS headers in
the rest-dsl in all the supported <a shape="rect"
href="rest-dsl.html">Rest DSL</a>
components.</li><li>The <code>options</code> verb in the <a
shape="rect" href="rest-dsl.html">Rest DSL</a> has been deprecated and are not
in use if CORS is enabled.<br clear="none"><br clear="none"><br
clear="none"></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"><tbod
y><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></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">FireF
ox</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-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-wid
th: 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>Reworked the Apache Karaf feature to
not install camel-spring by default. The problem is cam
el-spring is using spring-dm which is only supports Spring 3.x, and therefore
Spring 3.x was installed and used. All the Camel features that uses Spring JARs
are now using Spring 4.x.</li><li><a shape="rect" href="tools.html">Camel
commands</a> for <a shape="rect" href="spring-boot.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="rec
t" 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="rect" 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-jack
son</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, where 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 larger
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>@PostConstruc
t</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><li>A new <a shape="rect"
href="cdi-testing.html">Camel CDI Test</a> module is available to ease testing
of Camel CDI applications</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><li><a shape="rect"
href="jaxb.html">JAXB</a> data format and type converter now supports
converting from XML to POJO for classes that are using ObjectFactory classes
instead of XmlRootElement annotations.</li><li>The <a shape="rect"
href="kafka.html">Kafka</a> component has been migrated to use the Java Kafka
client instead of Scala. As such there may be migration efforts or code changes
that can affect users upgrading.</li><li>The <a shape="rect"
href="loop.html">Loop</a> EIP now allows to run in a while loop mode, so it
loops until the predicate returns false.</li><li>Improved <a shape="rect"
href="rest-dsl.html">Rest DSL</a> when CORS enabled to process and return the
configured CORS headers in the rest-dsl
in all the supported <a shape="rect" href="rest-dsl.html">Rest DSL</a>
components.</li><li>The <code>options</code> verb in the <a
shape="rect" href="rest-dsl.html">Rest DSL</a> has been deprecated and are not
in use if CORS is enabled.</li><li>The <a shape="rect"
href="logeip.html">LogEIP</a> allows to use a global configured log name,
instead of using route id as the logger name</li><li>A
new <code>camel-spring-boot-starter</code> module that is a Spring-Boot
starter module like any other starter modules.</li><li>Allow to run
Camel <a shape="rect" href="spring-boot.html">Spring Boot</a> applications
and keep the JVM running in a easy way by
setting <code>camel.springboot.main-run-controller = true</code>
option.</li><li>The <a shape="rect" href="sql-component.html">SQL
Component</a> supports using SQL IN queries in the producer where the number of
values in the IN clause is dynamic from the current
exchange.</li><li>The <a shape="
rect" href="swagger-java.html">Swagger Java</a> module now supports YAML as
response format in addition to the exisitng JSon format.</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
DSL</a> with apiContextPath fail to start if there are 2 ore more rest's
in use.</li><li>Fixed <a shape="rect" href="rest-dsl.html">Rest DSL</a>
with <a shape="rect" href="swagger-java.html">Swagger Java</a> to output
the swagger API with property placeholder resolved to actual used
values.</li><li><a shape="rect" href="paho.html">Paho</a> 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 i
ssue 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>Fixe
d <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="spring-boot.html">Spring Boot</a> may report spring type
converter errors if <a shape="rect" href="stream-caching.html">Stream
caching</a> is enabled.</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="cdi-testing.html">camel-test-cdi</a> - ease testing of Camel CDI
>applications</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><li><a shape="rect"
href="yaml-data-format.html">YAML Data Format</a> - YAML based data
format.</li><li>Hessian - Caucho Hessian 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>ca
mel-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-cdi-test - demonstrates the
testing features that are provided as part of the integration between Camel and
CDI.<span><span><br
clear="none"></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 Gadg
et 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 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-KnownI
ssues">Known Issues</h2><ul><li>camel-guice cannot install in
Karaf/ServiceMix</li></ul><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>O
ptaplanner 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>When installing the camel feature in Apache Karaf,
then camel-spring is not longer installed by default. You need to install
camel-spring feature if using spring-dm on Karaf. </li><li>Reworked the
Apache Karaf feature to not install camel-spring by default. The problem is
camel-spring is using spring-dm which is only supports Spring 3.x, and
therefore Spring 3.x was installed and
used. All the Camel features that uses Spring JARs are now using Spring
4.x.</li><li>Removed camel-docker from karaf features as it does not work in
OSGi</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 s
hape="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 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 applic
ation 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><li>The <a shape="rect" href="kafka.html">Kafka</a> component
has been migrated to use the Java Kafka client instead of Scala. As such there
may be migration efforts or code changes that can affect users
upgrading.</li><li>Improved <a shape="rect" href="rest-dsl.html">Rest
DSL</a> when CORS enabled to process and return the configured CORS headers in
the rest-dsl in all the supported <a shape="rect"
href="rest-dsl.html">Rest DSL</a>
components.</li><li>The <code>options</code> verb in the <a
shape="rect" href="rest-dsl.html">Rest DSL</a> has been deprecated and are not
in use if CORS is enabled.<br clear="none"><br clear="none"><br
clear="none"></li></ul><h2 id="Camel2.17.0Release-GettingtheDistributions">Get
ting 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></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.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/cam
el/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-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="e
xternal-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/swagger-java.html
==============================================================================
--- websites/production/camel/content/swagger-java.html (original)
+++ websites/production/camel/content/swagger-java.html Sun Mar 20 11:18:34 2016
@@ -178,7 +178,7 @@
<url-pattern>/api-docs/*</url-pattern>
<url-pattern>/rest/*</url-pattern>
</filter-mapping>]]></script>
-</div></div><p>The CorsFilter sets the following headers for all
requests</p><ul><li>Access-Control-Allow-Origin =
*</li><li>Access-Control-Allow-Methods = GET, HEAD, POST, PUT, DELETE,
TRACE, OPTIONS, CONNECT, PATCH</li><li>Access-Control-Max-Age =
3600</li><li>Access-Control-Allow-Headers = Origin, Accept,
X-Requested-With, Content-Type, Access-Control-Request-Method,
Access-Control-Request-Headers</li></ul><p><span style="color:
rgb(52,48,45);">Notice this is a very simple CORS filter. You may need to use a
more sophisticated filter to set the header values differently for a given
client. Or block certain clients etc.</span></p><h3
id="SwaggerJava-ContextIdListingenabled">ContextIdListing enabled</h3><p>When
contextIdListing is enabled then its detecting all the running CamelContexts in
the same JVM. These contexts are listed in the root path, eg `/api-docs` as a
simple list of names in json format. To access the swagger documentation then
the context-path must be appen
ded with the Camel context id, such as `api-docs/myCamel`. The
option apiContextIdPattern can be used to filter the names in this
list.</p><h3 id="SwaggerJava-Examples">Examples</h3><p>In the Apache Camel
distribution we ship the <code>camel-example-swagger-cdi</code> and
<code>camel-example-swagger-java</code> which demonstrates using this
Swagger component.</p><div><span style="white-space: pre-wrap;"><br
clear="none"></span></div></div>
+</div></div><p>The CorsFilter sets the following headers for all
requests</p><ul><li>Access-Control-Allow-Origin =
*</li><li>Access-Control-Allow-Methods = GET, HEAD, POST, PUT, DELETE,
TRACE, OPTIONS, CONNECT, PATCH</li><li>Access-Control-Max-Age =
3600</li><li>Access-Control-Allow-Headers = Origin, Accept,
X-Requested-With, Content-Type, Access-Control-Request-Method,
Access-Control-Request-Headers</li></ul><p><span style="color:
rgb(52,48,45);">Notice this is a very simple CORS filter. You may need to use a
more sophisticated filter to set the header values differently for a given
client. Or block certain clients etc.</span></p><h3
id="SwaggerJava-ContextIdListingenabled">ContextIdListing enabled</h3><p>When
contextIdListing is enabled then its detecting all the running CamelContexts in
the same JVM. These contexts are listed in the root path, eg `/api-docs` as a
simple list of names in json format. To access the swagger documentation then
the context-path must be appen
ded with the Camel context id, such as `api-docs/myCamel`. The
option apiContextIdPattern can be used to filter the names in this
list.</p><h3 id="SwaggerJava-JSonorYaml">JSon or Yaml</h3><p><strong>Available
as of Camel 2.17</strong></p><p>The camel-swagger-java module supports both
JSon and Yaml out of the box. You can specify in the request url what you want
returned by using /swagger.json or /swagger.yaml for either one. If none is
specified then the HTTP Accept header is used to detect if json or yaml can be
accepted. If either both is accepted or none was set as accepted then json is
returned as the default format.</p><h3
id="SwaggerJava-Examples">Examples</h3><p>In the Apache Camel distribution we
ship the <code>camel-example-swagger-cdi</code> and
<code>camel-example-swagger-java</code> which demonstrates using this
Swagger component.</p><div><span style="white-space: pre-wrap;"><br
clear="none"></span></div></div>
</td>
<td valign="top">
<div class="navigation">