Author: buildbot Date: Fri Jan 31 17:19:56 2014 New Revision: 895957 Log: Production update by buildbot for camel
Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/camel-2130-release.html Modified: websites/production/camel/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/camel/content/camel-2130-release.html ============================================================================== --- websites/production/camel/content/camel-2130-release.html (original) +++ websites/production/camel/content/camel-2130-release.html Fri Jan 31 17:19:56 2014 @@ -87,7 +87,7 @@ <tr> <td valign="top" width="100%"> <div class="wiki-content maincontent"><h1 id="Camel2.13.0Release-Camel2.13.0release(currentlyinprogress)">Camel 2.13.0 release (currently in progress)</h1><div style="padding-right:20px;float:left;margin-left:-20px;"> -<p><span class="image-wrap" style=""><img src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png" style="border: 0px solid black"></span></p></div><div style="min-height:200px"></div><h2 id="Camel2.13.0Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome to the 2.13.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)</p><ul><li>The MBean names registered by <a shape="rect" href="camel-jmx.html">Camel JMX</a> no longer include the hostname in the <code>context</code> part, eg before <code>context=myHost/myCamelId</code> and now after <code>context=myCamelId</code>. Having the hostname in the MBean name does not bring much value, and in fact makes things more complicated as the mbean name changes depending on the host running Camel.</li><li><a shape="rect" href="camel-jmx.html">MBean naming</a> in OSGi cleaned up to use simpler naming with symbolicName. Before we could have MBean names with duplicate bundle ids such as <code>context=114-114-camel-6</code>, which now is using the symbolic name instead, <code>context=MyApplication</code>.</li><li>When using multiple OSGi Blueprint <cm:property-placeholder>'s then Camel now favors using non-default placeholders, or the last property-placeholder defined in the Blueprint XML file. This allows for example to define default properties in one placeholder, and override these values in other placeholders.</li><li><a shape="rect" href="ftp2.html">FTP</a> consumer allow to download a single named file without using the FTP LIST command. This allows to download a known file from a FTP server even when the user account does not have permission to do FTP LIST command.</li><li><a shape="rect" href="ftp2.html">FTP</a> consumer allow to ignore file not found or insufficient file permission errors.</li><li><a shape="rect" href="data-format.html">Data Format</a> using marshal now leverages <a shape="rect" href="stream-caching.html">Stream caching</a> out of th e box if enabled, which allows to marshal big streams and spool to disk, instead of being pure in-memory based.</li><li>Improved using <a shape="rect" href="bean.html">Bean</a> when the bean is looked up in the <a shape="rect" href="registry.html">Registry</a>, when using concurrent processing in the route.</li><li>Added <code>cache</code> option to <code>beanRef</code> and <code><bean></code> in the DSL. This avoids looking up the <a shape="rect" href="bean.html">Bean</a> from the <a shape="rect" href="registry.html">Registry</a> on each usage; this can safely be done for singleton beans.</li><li>Configuring <a shape="rect" href="data-format.html">Data Format</a>s in XML attributes now supports reference lookup using the # syntax, eg <code><jaxb xmlStreamWriterWrapper="#myWriterWrapper" ..></code></li><li><a shape="rect" href="jdbc.html">JDBC</a> component now also support <code>outputType</code> to specify the expected output as either a List or single Object. As well allow to map to a bean using a <code>BeanRowMapper</code> to control the mapping of ROW names to bean properties.</li><li>Both <a shape="rect" href="quartz.html">Quartz</a> as well as <a shape="rect" href="quartz2.html">Quartz2</a> based <a shape="rect" href="scheduledroutepolicy.html">ScheduledRoutePolicy</a> has been improved to better support cluster setups (e.g. to not schedule jobs being already scheduled through another node inside a given cluster).</li><li>Reduced the work the <a shape="rect" href="aggregator2.html">Aggregate</a> EIP does while holding a lock during aggregation, which can lead to improved performance in some use-cases.</li><li><code>JndiRegistry</code> now implements all the find methods.</li><li><a shape="rect" href="vm.html">VM</a> component now supports <code>multipleConsumers=true</code> across deployment units.</li><li>Added <code>@PreConsumed</code> to <a shape="rect" href="jpa.html">JPA</a> consumer.</li><li>Added CamelFileName header support to the <a shape="rect" href="hdfs.html">HDFS</a> producer</li><li>Like as <code>JpaConsumer</code> now also <code>JpaProducer</code> of the <a shape="rect" href="jpa.html">JPA</a> component supports the <code>CamelEntityManager</code> header.</li><li><a shape="rect" href="restlet.html">Restlet</a> consumer now supports returning custom headers as HTTP headers from the Camel <a shape="rect" href="message.html">Message</a>.</li><li><a shape="rect" href="spring-java-config.html">Spring Java Config</a> <code>CamelConfiguration</code> now automagically detects all <code>RouteBuilder</code> instances registered in the Spring context if <code>CamelConfiguration#routes</code> method is not overridden.</li><li>Added support for transferring custom headers with <a shape="rect" href="rabbitmq.html">RabbitMQ</a> component.</li><li><a shape="rect" href="crypto.html">PGPDataFormat</a> enables stream cache during unmarshaling.</li><li><code>FileIdempotentRepository</code> now creates necessary parent direc tories together with the new repository file.</li><li><a shape="rect" href="properties.html">Properties</a> component and <a shape="rect" href="using-propertyplaceholder.html">property placeholder</a> will now ignore non existing JVM and environment options as well if <code>ignoreMissingLocation</code> is set to <code>true</code>.</li><li>Improved <a shape="rect" href="stream.html">Stream</a> consumer to enrich the <a shape="rect" href="message.html">Message</a> with headers about current index / completion flag.</li><li>Added <a shape="rect" href="bean-injection.html"><code>@BeanInject</code></a> to inject beans (obtained from the <a shape="rect" href="registry.html">Registry</a>) in your beans such as <code>RouteBuilder</code> classes.</li><li>Polished the <a shape="rect" href="karaf.html">Karaf</a> commands to output tables sorted and auto calculated width, so the data is formatted nicely.</li><li>Introduced <code>UnitOfWorkFactory</code> to allow end users to use custom <code>Un itOfWork</code> implementations created by the factory.</li><li>Doing request/reply over <a shape="rect" href="jms.html">JMS</a> allows per individual message <code>requestTimeout</code> value by specifying the timeout value in the <code>"CamelJmsRequestTimeout"</code> header.</li><li><a shape="rect" href="quartz.html">Quartz</a> and <a shape="rect" href="quartz2.html">Quartz2</a> components now enlist the quartz scheduler by default in JMX, unless configured to be disabled.</li><li><span><a shape="rect" href="twitter.html">Twitter</a> Component supports to set proxy.</span></li><li><span><a shape="rect" href="netty-http.html">Netty HTTP</a> consumer now remembers the raw (not decoded) value of URI query in the <span> "<code>CamelHttpRawQuery</code>"</span> header.<br clear="none"></span></li></ul><h3 id="Camel2.13.0Release-FixedIssues">Fixed Issues</h3><ul><li>Fixed an <code>ArrayIndexOutOfBoundsException</code> with <a shape="rect" href="message-history.html">Message History</a> w hen using <a shape="rect" href="seda.html">SEDA</a></li><li>Fixed <code>requestTimeout</code> on <a shape="rect" href="netty.html">Netty</a> not triggering when we have received message.</li><li>Fixed <a shape="rect" href="parameter-binding-annotations.html">Parameter Binding Annotations</a> on boolean types to evaluate as <a shape="rect" href="predicate.html">Predicate</a> instead of <a shape="rect" href="expression.html">Expression</a></li><li>Fixed using <a shape="rect" href="file2.html">File</a> consumer with <code>delete=true&readLock=fileLock</code> not being able to delete the file on Windows.</li><li>Fixed <a shape="rect" href="throttler.html">Throttler</a> to honor time slots after period expires (eg so it works consistently and as expected).</li><li>Fixed getting JMSXUserID property when consuming from <a shape="rect" href="activemq.html">ActiveMQ</a></li><li>Fixed <a shape="rect" href="intercept.html">interceptFrom</a> to support property placeholders</li><li>Fixed a race condition in initializing <code>SSLContext</code> in <a shape="rect" href="netty.html">Netty</a> and <a shape="rect" href="netty-http.html">Netty HTTP</a></li><li>Fixed using <a shape="rect" href="recipient-list.html">Recipient List</a>, <a shape="rect" href="routing-slip.html">Routing Slip</a> calling another route which is configured with <code>NoErrorHandler</code>, and an exception occurred in that route, would be propagated back as not-exhausted, allow the caller route to have its error handler react on the exception.</li><li>Fixed <a shape="rect" href="quartz.html">Quartz</a> and exception was thrown when scheduling a job, would affect during shutdown, assuming the job was still in progress, and not shutdown the Quartz scheduler.</li><li>Fixed so you can configure <a shape="rect" href="stomp.html">Stomp</a> endpoints using <a shape="rect" href="uris.html">URIs</a></li><li>Fixed memory leak when using <a shape="rect" href="language.html">Language</a> component with <code>c amel-script</code> languages and having <code>contentCache=false</code></li><li>Fixed <a shape="rect" href="error-handler.html">Error Handler</a> may log at <code>WARN</code> level "Cannot determine current route from Exchange" when using <a shape="rect" href="splitter.html">Splitter</a></li><li>Fixed <code>camel-fop</code> to work in Apache <a shape="rect" href="karaf.html">Karaf</a> and ServiceMix</li><li>Fixed <a shape="rect" href="hdfs.html">HDFS</a> producer to use the configured <a shape="rect" href="uuidgenerator.html">UuidGenerator</a> when generating split file names to avoid filename collisions</li><li>Fixed <code>JpaProducer</code> and <code>JpaConsumer</code> of the <a shape="rect" href="jpa.html">JPA</a> component to not share/reuse the same <code>EntityManager</code> object which could cause problems if this would occur in the context of multiple/different threads.</li><li>Fixed <a shape="rect" href="http4.html">HTTP4</a> to support multiple custom component names in u se, each configured using different <code>SSLContext</code>.</li><li>Fixed <a shape="rect" href="content-based-router.html">Content Based Router</a> using method call's as <a shape="rect" href="predicate.html">Predicate</a>s if threw an exception, the <a shape="rect" href="content-based-router.html">Content Based Router</a> will call next predicate before triggering <a shape="rect" href="error-handler.html">Error Handler</a>.</li><li>Fixed <a shape="rect" href="netty-http.html">Netty HTTP</a> producer with query parameters may use wrong parameters from a previous call.</li><li>Fixed <a shape="rect" href="netty.html">Netty</a> producer may cause <code>NullPointerException</code> in <code>messageReceived</code> in client handler, if a <code>Channel</code> was destroyed from the producer pool.</li><li>Fixed <a shape="rect" href="file2.html">File</a> and <a shape="rect" href="ftp2.html">FTP</a> consumer(s) when <code>idempotent=true</code> could not detect changed file(s) as a new file, but would regard the file as idempotent.</li><li>Fixed <a shape="rect" href="stream.html">Stream</a> consumer reading a file using <code>groupLines</code> would not read last group of message if there was not enough lines to hit the threshold.</li><li>Fixed deleting the <em>done file</em> if <a shape="rect" href="file2.html">File</a> or <a shape="rect" href="ftp2.html">FTP</a> consumer rollback and the <code>moveFailed</code> option is in use.</li><li>Fixed <a shape="rect" href="avro.html">avro</a> data format in OSGi not being able to load schema classes.</li><li>Fixed <a shape="rect" href="camel-jmx.html">JMX</a> when using custom beans in routes with <code>@ManagedResource</code> to expose JMX attributes/operations to not include Camel standard attributes/operations from its processors, which would be shown as unavailable in JMX consoles.</li><li>Fixed <a shape="rect" href="quartz2.html">Quartz2</a> simple trigger repeat count default value not working causing the trigger to onl y fire once, instead of forever.</li><li>Fixed <a shape="rect" href="jms.html">JMS</a> with a JMSRepyTo header using a topic, was mistakenly used as a queue instead. </li><li>Fixed <a shape="rect" href="csv.html">CSV</a> to not modify the properties of the strategy constants declared by <code>org.apache.commons.csv.CSVStrategy</code> which would cause side effects when multiple <code>CsvDataFormat</code> objects are <strong>concurrently</strong> in use.</li></ul><h3 id="Camel2.13.0Release-New">New <a shape="rect" href="enterprise-integration-patterns.html">Enterprise Integration Patterns</a></h3><h3 id="Camel2.13.0Release-New.1">New <a shape="rect" href="components.html">Components</a></h3><ul><li><a shape="rect" href="infinispan.html"><code>camel-infinispan</code></a> - to interact with <a shape="rect" class="external-link" href="http://www.infinispan.org/" rel="nofollow">Infinispan</a> distributed data grid / cache.</li><li><code><a shape="rect" href="jgroups.html"> camel-jgroups</a></code> - provides exchange of messages between Camel infrastructure and <a shape="rect" class="external-link" href="http://www.jgroups.org" rel="nofollow">JGroups</a> clusters.</li><li><a shape="rect" href="optaplanner.html"><code>camel-optaplanner</code></a> - to use <a shape="rect" class="external-link" href="http://www.optaplanner.org/" rel="nofollow">OptaPlanner</a> for problem solving plans.</li><li><a shape="rect" href="splunk.html"><code>camel-splunk</code></a> - enables you to publish and search for events in Splunk</li><li><a shape="rect" href="aws-swf.html">camel-swf</a> - for managing workflows running on Amazon's <a shape="rect" class="external-link" href="http://aws.amazon.com/swf" rel="nofollow">Simple Workflow Service</a></li></ul><h3 id="Camel2.13.0Release-New.2">New <a shape="rect" href="camel-maven-archetypes.html">Camel Maven Archetypes</a></h3><ul><li>camel-archetype-cxf-code-first-blueprint</li><li>camel-archetype-cxf-contract-first-blueprint</ li></ul><h3 id="Camel2.13.0Release-NewDSL">New DSL</h3><h3 id="Camel2.13.0Release-NewAnnotations">New Annotations</h3><ul><li><a shape="rect" href="bean-injection.html"><code>@BeanInject</code></a></li></ul><h3 id="Camel2.13.0Release-NewDataFormats">New <a shape="rect" href="data-format.html">Data Formats</a></h3><h3 id="Camel2.13.0Release-New.3">New <a shape="rect" href="languages.html">Languages</a></h3><ul><li><a shape="rect" href="jsonpath.html">JSonPath</a> - To perform <a shape="rect" href="expression.html">Expression</a> and <a shape="rect" href="predicate.html">Predicate</a> on json payloads.</li></ul><h3 id="Camel2.13.0Release-New.4">New <a shape="rect" href="examples.html">Examples</a></h3><h3 id="Camel2.13.0Release-New.5">New <a shape="rect" href="tutorials.html">Tutorials</a></h3><h3 id="Camel2.13.0Release-NewTooling">New Tooling</h3><h2 id="Camel2.13.0Release-APIchanges">API changes</h2><ul><li>The interface of <a shape="rect" href="http4.html">http4</a> <code>org. apache.camel.component.http4.HttpClientConfigurer's method configureHttpClient(HttpClient client) was changed to configureHttpClient(HttpClientBuilder clientBuilder)</code></li></ul><h2 id="Camel2.13.0Release-KnownIssues">Known Issues</h2><h2 id="Camel2.13.0Release-DependencyUpgrades">Dependency Upgrades</h2><p>You can see any dependency changes using <a shape="rect" class="external-link" href="http://vdiff.notsoclever.cc/" rel="nofollow">Camel Dependencies Version Differences web tool</a> created by Tracy Snell from the Camel <a shape="rect" href="team.html">Team</a>.</p><p>The below list is a best effort, and we may miss some updates, its better to use the <a shape="rect" class="external-link" href="http://vdiff.notsoclever.cc/" rel="nofollow">Camel Dependencies Version Differences web tool</a> which uses the released projects for comparison.</p><ul><li>AHC 1.7.20 to 1.7.21</li><li>APNS 0.1.6 to 0.2.3</li><li>Atomikos 3.8.0 to 3.9.2</li><li>AWS-SDK 1.5.1 to 1.6.3</li><li>Avro 1.7.3 to 1.7.5</li><li>BeanIO 2.0.6 to 2.0.7</li><li>Commons Httpclient 4.2.5 to 4.3.1</li><li>Commons Httpcore 4.2.4 to 4.3.1</li><li>CXF 2.7.6 to 2.7.8</li><li>EHCache 2.7.2 to 2.8.0</li><li>Elasticsearch 0.20.6 to 0.90.5</li><li>FOP 1.0 to 1.1</li><li>Guave 14.0.1 to 15.0</li><li>Hazelcast 2.6 to 3.0.2</li><li>ICal4j 1.0.4 to 1.0.5.2</li><li>Jclouds 1.6.2-incubating to 1.7.0</li><li>Jettison 1.3.4 to 1.3.5</li><li>Jetty 7.6.9 to 8.1.12</li><li>Joda time 2.1 to 2.3</li><li>JRuby 1.7.4 to 1.7.5</li><li>Lucene 3.6.0 to 4.5.1</li><li>MongoDB Java Driver 2.11.2 to 2.11.3</li><li>MyBatis 3.2.2 to 3.2.4</li><li>OGNL 3.0.6 to 3.0.8</li><li>Quartz 2.2.0 to 2.2.1</li><li>RabbitMQ amqp Java Client 3.1.3 to 3.2.2.</li><li>Restlet 2.0.15 to 2.1.4</li><li>Saxon 9.5.0.2 to 9.5.1-2</li><li>Scala 2.10.2 to 2.10.3</li><li>Servlet API 2.5 to 3.0</li><li>SNMP4J 2.2.2 to 2.2.3</li><li>SolrJ 3.6.2 to 4.5.1</li><li>Spring Batch 2.2.1.RELEASE to 2.2.2.RELEASE</li><li>Spring Redis 1.0.4.RELEASE to 1.1.0 .RELEASE</li><li>SSHD 0.8.0 to 0.9.0</li><li>TestNG 6.8.5 to 6.8.7</li><li>XStream 1.4.4 to 1.4.5<br clear="none"><br clear="none"></li></ul><h2 id="Camel2.13.0Release-Internalchanges">Internal changes</h2><ul><li>Add <code>RouteAware</code> API to inject <code>Route</code> for <code>Service</code>'s in routes, for example the <code>Consumer</code>'s of the routes.</li><li><code>IOHelper.gerCharsetName</code> will now lookup key <code>Exchange.CHARSET_NAME</code> in header first and then fallback to property.</li><li>Camel Spring now longer automatic registers "spring-event://default" endpoint, which wasnt in use anyway.</li><li><a shape="rect" href="bam.html">BAM</a> component now uses raw <code>EntityManager</code> JPA API instead of deprecated Spring <code>JpaTemplate</code></li></ul><h2 id="Camel2.13.0Release-Changesthatmayaffectendusers">Changes that may affect end users</h2><ul><li>Components depending on Servlet API has been upgrade from Servlet API 2.5 to 3.0</li><li>Jetty u pgraded from 7.6.x to 8.1.x</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> uses <code>Object</code> instead of <code>String</code> as the key.</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> atomic number producer was using incorrect name (<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-6833">CAMEL-6833</a>). Name will be different with this release.</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> instance consumer was incorrectly writing headers to the "out" message as opposed to the "in" message. Headers are now written to the "in" message.</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> map/multimap consumer were sending header value "envict" when an item was evicted. This has been corrected and the value "evicted" is used now.</li><li>The enum value <code>NON_BLOCKING</code> has been removed in <code>camel-apns</ code> as its no longer support in APNS itself.</li><li><code>DefaultTimeoutMap</code> must call <code>start</code> to initialize the map before use.</li><li><code>@ExcludeRoutes</code> test annotation now accepts only classes implementing <code>RoutesBuilder</code> interface.</li><li>The MBean names registered by <a shape="rect" href="camel-jmx.html">Camel JMX</a> no longer include the hostname in the <code>context</code> part, eg before <code>context=myHost/myCamelId</code> and now after <code>context=myCamelId</code>. Having the hostname in the MBean name does not bring much value, and in fact makes things more complicated as the mbean name changes depending on the host running Camel. There is an option <code>includeHostName</code> that can be configure as <code>true</code> to preserve the old behavior.</li><li><a shape="rect" href="camel-jmx.html">MBean naming</a> in OSGi cleaned up to use simpler naming with symbolicName. Before we could have MBean names with duplicate bundle id s such as <code>context=114-114-camel-6</code>, which now is using the symbolic name instead, <code>context=MyApplication</code>.</li><li>Added <code>beforeAddRoutes</code> and <code>afterAddRoutes</code> to <code>org.apache.camel.component.servletlistener.CamelContextLifecycle</code> in <a shape="rect" href="servletlistener-component.html">ServletListener Component</a></li><li>The <a shape="rect" href="language.html">Language</a> component now no longer caches the compiled script as that could cause side-effects. You can set <code>cacheScript=true</code> to enable the previous behavior if your script is safe to do so.</li><li>The default value of <code>urlDecodeHeaders</code> option on <a shape="rect" href="netty-http.html">Netty HTTP</a> has been changed from <code>true</code> to <code>false</code>.</li></ul><h2 id="Camel2.13.0Release-Importantchangestoconsiderwhenupgrading">Important changes to consider when upgrading</h2><ul><li>If using <code>groupedExchanges</code> option on < a shape="rect" href="aggregator2.html">Aggregate</a> EIP then the <a shape="rect" href="exchange.html">Exchange</a>s is now stored on the message body as well. The old way of storing as a property is considered deprecated. See more details at <a shape="rect" href="aggregator2.html">Aggregate</a>.</li></ul><h2 id="Camel2.13.0Release-GettingtheDistributions">Getting the Distributions</h2><h3 id="Camel2.13.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/apa che-camel/2.13.0/apache-camel-2.13.0.zip">apache-camel-2.13.0.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/2.13.0/apache-camel-2.13.0.zip.asc">apache-camel-2.13.0.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/2.13.0/apache-camel-2.13.0.tar.gz">apache-camel-2.13.0.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/2.13.0/apache-camel-2.13.0.tar.gz.asc">apache-camel-2.13.0.tar.gz.asc</a></p></td></tr></tbody></table></div> <div class="aui-message hint shadowed information-macro"> +<p><span class="image-wrap" style=""><img src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png" style="border: 0px solid black"></span></p></div><div style="min-height:200px"></div><h2 id="Camel2.13.0Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome to the 2.13.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)</p><ul><li>The MBean names registered by <a shape="rect" href="camel-jmx.html">Camel JMX</a> no longer include the hostname in the <code>context</code> part, eg before <code>context=myHost/myCamelId</code> and now after <code>context=myCamelId</code>. Having the hostname in the MBean name does not bring much value, and in fact makes things more complicated as the mbean name changes depending on the host running Camel.</li><li><a shape="rect" href="camel-jmx.html">MBean naming</a> in OSGi cleaned up to use simpler naming with symbolicName. Before we could have MBean names with duplicate bundle ids such as <code>context=114-114-camel-6</code>, which now is using the symbolic name instead, <code>context=MyApplication</code>.</li><li>When using multiple OSGi Blueprint <cm:property-placeholder>'s then Camel now favors using non-default placeholders, or the last property-placeholder defined in the Blueprint XML file. This allows for example to define default properties in one placeholder, and override these values in other placeholders.</li><li><a shape="rect" href="ftp2.html">FTP</a> consumer allow to download a single named file without using the FTP LIST command. This allows to download a known file from a FTP server even when the user account does not have permission to do FTP LIST command.</li><li><a shape="rect" href="ftp2.html">FTP</a> consumer allow to ignore file not found or insufficient file permission errors.</li><li><a shape="rect" href="data-format.html">Data Format</a> using marshal now leverages <a shape="rect" href="stream-caching.html">Stream caching</a> out of th e box if enabled, which allows to marshal big streams and spool to disk, instead of being pure in-memory based.</li><li>Improved using <a shape="rect" href="bean.html">Bean</a> when the bean is looked up in the <a shape="rect" href="registry.html">Registry</a>, when using concurrent processing in the route.</li><li>Added <code>cache</code> option to <code>beanRef</code> and <code><bean></code> in the DSL. This avoids looking up the <a shape="rect" href="bean.html">Bean</a> from the <a shape="rect" href="registry.html">Registry</a> on each usage; this can safely be done for singleton beans.</li><li>Configuring <a shape="rect" href="data-format.html">Data Format</a>s in XML attributes now supports reference lookup using the # syntax, eg <code><jaxb xmlStreamWriterWrapper="#myWriterWrapper" ..></code></li><li><a shape="rect" href="jdbc.html">JDBC</a> component now also support <code>outputType</code> to specify the expected output as either a List or single Object. As well allow to map to a bean using a <code>BeanRowMapper</code> to control the mapping of ROW names to bean properties.</li><li>Both <a shape="rect" href="quartz.html">Quartz</a> as well as <a shape="rect" href="quartz2.html">Quartz2</a> based <a shape="rect" href="scheduledroutepolicy.html">ScheduledRoutePolicy</a> has been improved to better support cluster setups (e.g. to not schedule jobs being already scheduled through another node inside a given cluster).</li><li>Reduced the work the <a shape="rect" href="aggregator2.html">Aggregate</a> EIP does while holding a lock during aggregation, which can lead to improved performance in some use-cases.</li><li><code>JndiRegistry</code> now implements all the find methods.</li><li><a shape="rect" href="vm.html">VM</a> component now supports <code>multipleConsumers=true</code> across deployment units.</li><li>Added <code>@PreConsumed</code> to <a shape="rect" href="jpa.html">JPA</a> consumer.</li><li>Added CamelFileName header support to the <a shape="rect" href="hdfs.html">HDFS</a> producer</li><li>Like as <code>JpaConsumer</code> now also <code>JpaProducer</code> of the <a shape="rect" href="jpa.html">JPA</a> component supports the <code>CamelEntityManager</code> header.</li><li><a shape="rect" href="restlet.html">Restlet</a> consumer now supports returning custom headers as HTTP headers from the Camel <a shape="rect" href="message.html">Message</a>.</li><li><a shape="rect" href="spring-java-config.html">Spring Java Config</a> <code>CamelConfiguration</code> now automagically detects all <code>RouteBuilder</code> instances registered in the Spring context if <code>CamelConfiguration#routes</code> method is not overridden.</li><li>Added support for transferring custom headers with <a shape="rect" href="rabbitmq.html">RabbitMQ</a> component.</li><li><a shape="rect" href="crypto.html">PGPDataFormat</a> enables stream cache during unmarshaling.</li><li><code>FileIdempotentRepository</code> now creates necessary parent direc tories together with the new repository file.</li><li><a shape="rect" href="properties.html">Properties</a> component and <a shape="rect" href="using-propertyplaceholder.html">property placeholder</a> will now ignore non existing JVM and environment options as well if <code>ignoreMissingLocation</code> is set to <code>true</code>.</li><li>Improved <a shape="rect" href="stream.html">Stream</a> consumer to enrich the <a shape="rect" href="message.html">Message</a> with headers about current index / completion flag.</li><li>Added <a shape="rect" href="bean-injection.html"><code>@BeanInject</code></a> to inject beans (obtained from the <a shape="rect" href="registry.html">Registry</a>) in your beans such as <code>RouteBuilder</code> classes.</li><li>Polished the <a shape="rect" href="karaf.html">Karaf</a> commands to output tables sorted and auto calculated width, so the data is formatted nicely.</li><li>Introduced <code>UnitOfWorkFactory</code> to allow end users to use custom <code>Un itOfWork</code> implementations created by the factory.</li><li>Doing request/reply over <a shape="rect" href="jms.html">JMS</a> allows per individual message <code>requestTimeout</code> value by specifying the timeout value in the <code>"CamelJmsRequestTimeout"</code> header.</li><li><a shape="rect" href="quartz.html">Quartz</a> and <a shape="rect" href="quartz2.html">Quartz2</a> components now enlist the quartz scheduler by default in JMX, unless configured to be disabled.</li><li><span><a shape="rect" href="twitter.html">Twitter</a> Component supports to set proxy.</span></li><li><span><a shape="rect" href="netty-http.html">Netty HTTP</a> consumer now remembers the raw (not decoded) value of URI query in the <span> "<code>CamelHttpRawQuery</code>"</span> header.<br clear="none"></span></li></ul><h3 id="Camel2.13.0Release-FixedIssues">Fixed Issues</h3><ul><li>Fixed an <code>ArrayIndexOutOfBoundsException</code> with <a shape="rect" href="message-history.html">Message History</a> w hen using <a shape="rect" href="seda.html">SEDA</a></li><li>Fixed <code>requestTimeout</code> on <a shape="rect" href="netty.html">Netty</a> not triggering when we have received message.</li><li>Fixed <a shape="rect" href="parameter-binding-annotations.html">Parameter Binding Annotations</a> on boolean types to evaluate as <a shape="rect" href="predicate.html">Predicate</a> instead of <a shape="rect" href="expression.html">Expression</a></li><li>Fixed using <a shape="rect" href="file2.html">File</a> consumer with <code>delete=true&readLock=fileLock</code> not being able to delete the file on Windows.</li><li>Fixed <a shape="rect" href="throttler.html">Throttler</a> to honor time slots after period expires (eg so it works consistently and as expected).</li><li>Fixed getting JMSXUserID property when consuming from <a shape="rect" href="activemq.html">ActiveMQ</a></li><li>Fixed <a shape="rect" href="intercept.html">interceptFrom</a> to support property placeholders</li><li>Fixed a race condition in initializing <code>SSLContext</code> in <a shape="rect" href="netty.html">Netty</a> and <a shape="rect" href="netty-http.html">Netty HTTP</a></li><li>Fixed using <a shape="rect" href="recipient-list.html">Recipient List</a>, <a shape="rect" href="routing-slip.html">Routing Slip</a> calling another route which is configured with <code>NoErrorHandler</code>, and an exception occurred in that route, would be propagated back as not-exhausted, allow the caller route to have its error handler react on the exception.</li><li>Fixed <a shape="rect" href="quartz.html">Quartz</a> and exception was thrown when scheduling a job, would affect during shutdown, assuming the job was still in progress, and not shutdown the Quartz scheduler.</li><li>Fixed so you can configure <a shape="rect" href="stomp.html">Stomp</a> endpoints using <a shape="rect" href="uris.html">URIs</a></li><li>Fixed memory leak when using <a shape="rect" href="language.html">Language</a> component with <code>c amel-script</code> languages and having <code>contentCache=false</code></li><li>Fixed <a shape="rect" href="error-handler.html">Error Handler</a> may log at <code>WARN</code> level "Cannot determine current route from Exchange" when using <a shape="rect" href="splitter.html">Splitter</a></li><li>Fixed <code>camel-fop</code> to work in Apache <a shape="rect" href="karaf.html">Karaf</a> and ServiceMix</li><li>Fixed <a shape="rect" href="hdfs.html">HDFS</a> producer to use the configured <a shape="rect" href="uuidgenerator.html">UuidGenerator</a> when generating split file names to avoid filename collisions</li><li>Fixed <code>JpaProducer</code> and <code>JpaConsumer</code> of the <a shape="rect" href="jpa.html">JPA</a> component to not share/reuse the same <code>EntityManager</code> object which could cause problems if this would occur in the context of multiple/different threads.</li><li>Fixed <a shape="rect" href="http4.html">HTTP4</a> to support multiple custom component names in u se, each configured using different <code>SSLContext</code>.</li><li>Fixed <a shape="rect" href="content-based-router.html">Content Based Router</a> using method call's as <a shape="rect" href="predicate.html">Predicate</a>s if threw an exception, the <a shape="rect" href="content-based-router.html">Content Based Router</a> will call next predicate before triggering <a shape="rect" href="error-handler.html">Error Handler</a>.</li><li>Fixed <a shape="rect" href="netty-http.html">Netty HTTP</a> producer with query parameters may use wrong parameters from a previous call.</li><li>Fixed <a shape="rect" href="netty.html">Netty</a> producer may cause <code>NullPointerException</code> in <code>messageReceived</code> in client handler, if a <code>Channel</code> was destroyed from the producer pool.</li><li>Fixed <a shape="rect" href="file2.html">File</a> and <a shape="rect" href="ftp2.html">FTP</a> consumer(s) when <code>idempotent=true</code> could not detect changed file(s) as a new file, but would regard the file as idempotent.</li><li>Fixed <a shape="rect" href="stream.html">Stream</a> consumer reading a file using <code>groupLines</code> would not read last group of message if there was not enough lines to hit the threshold.</li><li>Fixed deleting the <em>done file</em> if <a shape="rect" href="file2.html">File</a> or <a shape="rect" href="ftp2.html">FTP</a> consumer rollback and the <code>moveFailed</code> option is in use.</li><li>Fixed <a shape="rect" href="avro.html">avro</a> data format in OSGi not being able to load schema classes.</li><li>Fixed <a shape="rect" href="camel-jmx.html">JMX</a> when using custom beans in routes with <code>@ManagedResource</code> to expose JMX attributes/operations to not include Camel standard attributes/operations from its processors, which would be shown as unavailable in JMX consoles.</li><li>Fixed <a shape="rect" href="quartz2.html">Quartz2</a> simple trigger repeat count default value not working causing the trigger to onl y fire once, instead of forever.</li><li>Fixed <a shape="rect" href="jms.html">JMS</a> with a JMSRepyTo header using a topic, was mistakenly used as a queue instead. </li><li>Fixed <a shape="rect" href="csv.html">CSV</a> to not modify the properties of the strategy constants declared by <code>org.apache.commons.csv.CSVStrategy</code> which would cause side effects when multiple <code>CsvDataFormat</code> objects are <strong>concurrently</strong> in use.</li><li>Fixed camel-script may return result from previous evaluation instead of result from current exchange.</li></ul><h3 id="Camel2.13.0Release-New">New <a shape="rect" href="enterprise-integration-patterns.html">Enterprise Integration Patterns</a></h3><h3 id="Camel2.13.0Release-New.1">New <a shape="rect" href="components.html">Components</a></h3><ul><li><a shape="rect" href="infinispan.html"><code>camel-infinispan</code></a> - to interact with <a shape="rect" class="external-link" href="http://www.infinispan.org/" rel="nofollow">Infinispan</a> distributed data grid / cache.</li><li><code><a shape="rect" href="jgroups.html">camel-jgroups</a></code> - provides exchange of messages between Camel infrastructure and <a shape="rect" class="external-link" href="http://www.jgroups.org" rel="nofollow">JGroups</a> clusters.</li><li><a shape="rect" href="optaplanner.html"><code>camel-optaplanner</code></a> - to use <a shape="rect" class="external-link" href="http://www.optaplanner.org/" rel="nofollow">OptaPlanner</a> for problem solving plans.</li><li><a shape="rect" href="splunk.html"><code>camel-splunk</code></a> - enables you to publish and search for events in Splunk</li><li><a shape="rect" href="aws-swf.html">camel-swf</a> - for managing workflows running on Amazon's <a shape="rect" class="external-link" href="http://aws.amazon.com/swf" rel="nofollow">Simple Workflow Service</a></li></ul><h3 id="Camel2.13.0Release-New.2">New <a shape="rect" href="camel-maven-archetypes.html">Camel Maven Archetypes< /a></h3><ul><li>camel-archetype-cxf-code-first-blueprint</li><li>camel-archetype-cxf-contract-first-blueprint</li></ul><h3 id="Camel2.13.0Release-NewDSL">New DSL</h3><h3 id="Camel2.13.0Release-NewAnnotations">New Annotations</h3><ul><li><a shape="rect" href="bean-injection.html"><code>@BeanInject</code></a></li></ul><h3 id="Camel2.13.0Release-NewDataFormats">New <a shape="rect" href="data-format.html">Data Formats</a></h3><h3 id="Camel2.13.0Release-New.3">New <a shape="rect" href="languages.html">Languages</a></h3><ul><li><a shape="rect" href="jsonpath.html">JSonPath</a> - To perform <a shape="rect" href="expression.html">Expression</a> and <a shape="rect" href="predicate.html">Predicate</a> on json payloads.</li></ul><h3 id="Camel2.13.0Release-New.4">New <a shape="rect" href="examples.html">Examples</a></h3><h3 id="Camel2.13.0Release-New.5">New <a shape="rect" href="tutorials.html">Tutorials</a></h3><h3 id="Camel2.13.0Release-NewTooling">New Tooling</h3><h2 id="Camel2.13.0Release-A PIchanges">API changes</h2><ul><li>The interface of <a shape="rect" href="http4.html">http4</a> <code>org.apache.camel.component.http4.HttpClientConfigurer's method configureHttpClient(HttpClient client) was changed to configureHttpClient(HttpClientBuilder clientBuilder)</code></li></ul><h2 id="Camel2.13.0Release-KnownIssues">Known Issues</h2><h2 id="Camel2.13.0Release-DependencyUpgrades">Dependency Upgrades</h2><p>You can see any dependency changes using <a shape="rect" class="external-link" href="http://vdiff.notsoclever.cc/" rel="nofollow">Camel Dependencies Version Differences web tool</a> created by Tracy Snell from the Camel <a shape="rect" href="team.html">Team</a>.</p><p>The below list is a best effort, and we may miss some updates, its better to use the <a shape="rect" class="external-link" href="http://vdiff.notsoclever.cc/" rel="nofollow">Camel Dependencies Version Differences web tool</a> which uses the released projects for comparison.</p><ul><li>AHC 1.7.20 to 1.7.21</li><li>APNS 0.1.6 to 0.2.3</li><li>Atomikos 3.8.0 to 3.9.2</li><li>AWS-SDK 1.5.1 to 1.6.3</li><li>Avro 1.7.3 to 1.7.5</li><li>BeanIO 2.0.6 to 2.0.7</li><li>Commons Httpclient 4.2.5 to 4.3.1</li><li>Commons Httpcore 4.2.4 to 4.3.1</li><li>CXF 2.7.6 to 2.7.8</li><li>EHCache 2.7.2 to 2.8.0</li><li>Elasticsearch 0.20.6 to 0.90.5</li><li>FOP 1.0 to 1.1</li><li>Guave 14.0.1 to 15.0</li><li>Hazelcast 2.6 to 3.0.2</li><li>ICal4j 1.0.4 to 1.0.5.2</li><li>Jclouds 1.6.2-incubating to 1.7.0</li><li>Jettison 1.3.4 to 1.3.5</li><li>Jetty 7.6.9 to 8.1.12</li><li>Joda time 2.1 to 2.3</li><li>JRuby 1.7.4 to 1.7.5</li><li>Lucene 3.6.0 to 4.5.1</li><li>MongoDB Java Driver 2.11.2 to 2.11.3</li><li>MyBatis 3.2.2 to 3.2.4</li><li>OGNL 3.0.6 to 3.0.8</li><li>Quartz 2.2.0 to 2.2.1</li><li>RabbitMQ amqp Java Client 3.1.3 to 3.2.2.</li><li>Restlet 2.0.15 to 2.1.4</li><li>Saxon 9.5.0.2 to 9.5.1-2</li><li>Scala 2.10.2 to 2.10.3</li><li>Servlet API 2.5 to 3.0</li><li>SNMP4J 2.2.2 to 2.2.3</li><li>SolrJ 3.6.2 to 4.5.1</li><li>Spring Batch 2.2.1.RELEASE to 2.2.2.RELEASE</li><li>Spring Redis 1.0.4.RELEASE to 1.1.0.RELEASE</li><li>SSHD 0.8.0 to 0.9.0</li><li>TestNG 6.8.5 to 6.8.7</li><li>XStream 1.4.4 to 1.4.5<br clear="none"><br clear="none"></li></ul><h2 id="Camel2.13.0Release-Internalchanges">Internal changes</h2><ul><li>Add <code>RouteAware</code> API to inject <code>Route</code> for <code>Service</code>'s in routes, for example the <code>Consumer</code>'s of the routes.</li><li><code>IOHelper.gerCharsetName</code> will now lookup key <code>Exchange.CHARSET_NAME</code> in header first and then fallback to property.</li><li>Camel Spring now longer automatic registers "spring-event://default" endpoint, which wasnt in use anyway.</li><li><a shape="rect" href="bam.html">BAM</a> component now uses raw <code>EntityManager</code> JPA API instead of deprecated Spring <code>JpaTemplate</code></li></ul><h2 id="Camel2.13.0Release-Changesthatmayaffectendusers">Changes that may affect end use rs</h2><ul><li>Components depending on Servlet API has been upgrade from Servlet API 2.5 to 3.0</li><li>Jetty upgraded from 7.6.x to 8.1.x</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> uses <code>Object</code> instead of <code>String</code> as the key.</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> atomic number producer was using incorrect name (<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-6833">CAMEL-6833</a>). Name will be different with this release.</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> instance consumer was incorrectly writing headers to the "out" message as opposed to the "in" message. Headers are now written to the "in" message.</li><li><a shape="rect" href="hazelcast-component.html">Hazelcast Component</a> map/multimap consumer were sending header value "envict" when an item was evicted. This has been corrected and the value "evicted" is used now.</li><li>The enum value <code>NON_BLOCKING</code> has been removed in <code>camel-apns</code> as its no longer support in APNS itself.</li><li><code>DefaultTimeoutMap</code> must call <code>start</code> to initialize the map before use.</li><li><code>@ExcludeRoutes</code> test annotation now accepts only classes implementing <code>RoutesBuilder</code> interface.</li><li>The MBean names registered by <a shape="rect" href="camel-jmx.html">Camel JMX</a> no longer include the hostname in the <code>context</code> part, eg before <code>context=myHost/myCamelId</code> and now after <code>context=myCamelId</code>. Having the hostname in the MBean name does not bring much value, and in fact makes things more complicated as the mbean name changes depending on the host running Camel. There is an option <code>includeHostName</code> that can be configure as <code>true</code> to preserve the old behavior.</li><li><a shape="rect" href="camel-jmx.html">MBean naming</a> in OSG i cleaned up to use simpler naming with symbolicName. Before we could have MBean names with duplicate bundle ids such as <code>context=114-114-camel-6</code>, which now is using the symbolic name instead, <code>context=MyApplication</code>.</li><li>Added <code>beforeAddRoutes</code> and <code>afterAddRoutes</code> to <code>org.apache.camel.component.servletlistener.CamelContextLifecycle</code> in <a shape="rect" href="servletlistener-component.html">ServletListener Component</a></li><li>The <a shape="rect" href="language.html">Language</a> component now no longer caches the compiled script as that could cause side-effects. You can set <code>cacheScript=true</code> to enable the previous behavior if your script is safe to do so.</li><li>The default value of <code>urlDecodeHeaders</code> option on <a shape="rect" href="netty-http.html">Netty HTTP</a> has been changed from <code>true</code> to <code>false</code>.</li></ul><h2 id="Camel2.13.0Release-Importantchangestoconsiderwhenupgradi ng">Important changes to consider when upgrading</h2><ul><li>If using <code>groupedExchanges</code> option on <a shape="rect" href="aggregator2.html">Aggregate</a> EIP then the <a shape="rect" href="exchange.html">Exchange</a>s is now stored on the message body as well. The old way of storing as a property is considered deprecated. See more details at <a shape="rect" href="aggregator2.html">Aggregate</a>.</li></ul><h2 id="Camel2.13.0Release-GettingtheDistributions">Getting the Distributions</h2><h3 id="Camel2.13.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" cla ss="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.13.0/apache-camel-2.13.0.zip">apache-camel-2.13.0.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/2.13.0/apache-camel-2.13.0.zip.asc">apache-camel-2.13.0.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/2.13.0/apache-camel-2.13.0.tar.gz">apache-camel-2.13.0.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/2.13.0/apache-camel-2.13.0.tar.gz.asc">apache-camel-2.13.0.tar.gz.asc</a></p></td></tr></tbody></table></div> <div clas s="aui-message hint shadowed information-macro"> <p class="title">The above URLs use redirection</p> <span class="aui-icon icon-hint">Icon</span> <div class="message-content">