camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [CONF] Apache Camel > Camel 2.10.0 Release
Date Sun, 04 Mar 2012 09:12:00 GMT
    <base href="">
            <link rel="stylesheet" href="/confluence/s/2042/9/1/_/styles/combined.css?spaceKey=CAMEL&amp;forWysiwyg=true"
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="">Camel
2.10.0 Release</a></h2>
    <h4>Page <b>edited</b> by             <a href="">Claus
                         <h4>Changes (2)</h4>
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >* Camel will now also copy the message
headers for a JmsMessage if you use {{useOriginalMessage}} in a {{onException}} definition.
<br>* Added {{mockEndpointsAndSkip}} to [AdviceWith] and the [Test Kit|Testing] <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*
The filter on [File|File2] and [FTP|FTP2] components now supports {{isDirectory}} parameter
to let users filter on directories as well. This can be used to skip unwanted directories,
and thus speedup consuming files. <br></td></tr>
            <tr><td class="diff-unchanged" > <br>h3. Fixed issues <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >* Removed the constructor which takes
custom start and end tokens from {{SimpleLanguage}}. Instead use the change methods to set
custom tokens. <br>* Added {{onThreadPoolRemove}}, and {{onErrorHandlerRemove}} methods
to {{LifecycleStrategy}} <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*
Added {{isDirectory}} as parameter to {{accept}} method on {{GenericFileFilter}} <br></td></tr>
            <tr><td class="diff-unchanged" > <br>h2. Internal/Non API refactorings
that may affect users <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="Camel2.10.0Release-Camel2.10.0release%28currentlyinprogress%29"></a>Camel
2.10.0 release (currently in progress)</h1>

<div style="padding-right:20px;float:left;margin-left:-20px;"><p><span class="image-wrap"
style=""><img src=""
style="border: 0px solid black" /></span></p></div>
<div style="min-height:200px"></div>

<h2><a name="Camel2.10.0Release-NewandNoteworthy"></a>New and Noteworthy</h2>

<p>Welcome to the 2.10.0 release which approx XXX issues resolved (new features, improvements
and bug fixes such as...)</p>

	<li>Internal code cleanup to reduce warnings reported by Eclipse</li>
	<li>Moved <a href="/confluence/display/CAMEL/Spring+Testing" title="Spring Testing">Spring
Testing</a> from <tt>camel-test</tt> to <tt>camel-test-spring</tt>
	<li>Camel <a href="/confluence/display/CAMEL/Using+PropertyPlaceholder" title="Using
PropertyPlaceholder">Property Placeholders</a> is now supported in embedded <a
href="/confluence/display/CAMEL/Expression" title="Expression">Expression</a>s in
the Camel routes.</li>
	<li>Added missing options in the XML DSL for the <a href="/confluence/display/CAMEL/XPath"
title="XPath">XPath</a> language to control and set XPath Engine to use, etc.</li>
	<li>Added option <tt>logNamespaces</tt> to <a href="/confluence/display/CAMEL/XPath"
title="XPath">XPath</a> language to have <tt>INFO</tt> logging of detected
namespaces from message. Can be used to aid during issues with having <a href="/confluence/display/CAMEL/XPath"
title="XPath">XPath</a> expression works as expected (as often its a namespace conflict).</li>
	<li>Added <tt>replyToCacheLevelName</tt> option to <a href="/confluence/display/CAMEL/JMS"
title="JMS">JMS</a> component, to allow to configure cache levels for persistent
reply consumer, when doing request/reply over JMS. Some message brokers do not work well with
caching, so users may need to configure this option to <tt>CACHE_NONE</tt>.</li>
	<li>Added <tt>antInclude</tt> and <tt>antExclude</tt> options
to <a href="/confluence/display/CAMEL/File2" title="File2">File</a> and <a
href="/confluence/display/CAMEL/FTP2" title="FTP2">FTP</a> components, to make it
easier to specify include/exclude using ANT style.</li>
	<li>The <a href="/confluence/display/CAMEL/Camel+Maven+Archetypes" title="Camel
Maven Archetypes">Camel archetypes</a> for java and scala, no longer generates project
with Spring dependency.</li>
	<li>Improved <tt>JdbcMessageIdRepository</tt> in <a href="/confluence/display/CAMEL/SQL+Component"
title="SQL Component">SQL</a> to use custom sql statements/queries.</li>
	<li>Added option to <a href="/confluence/display/CAMEL/Properties" title="Properties">Properties</a>
to allow silently ignoring property locations not found, such as a .properties file.</li>
	<li>Added <tt>managementNamePattern</tt> attribute to <tt>&lt;camelContext&gt;</tt>
to make it very easy to customize and control the JMX naming of the Camel application. See
details at <a href="/confluence/display/CAMEL/Camel+JMX#CamelJMX-CamelJMXManagementNamingStrategy">Camel
JMX</a>. For example in OSGi environments you can explicit configure a <tt>managementNamePattern</tt>
in case you do not want the bundleId as part of the MBean names.</li>
	<li>Added streaming update support to <a href="/confluence/display/CAMEL/Solr" title="Solr">Solr</a>
as well as support for SolrInputDocuments</li>
	<li>Improved Camel <a href="/confluence/display/CAMEL/Mail" title="Mail">Mail</a>
to support the <tt>replyTo</tt> option</li>
	<li>Added <tt>traceEnabled</tt> option to <a href="/confluence/display/CAMEL/Jetty"
title="Jetty">Jetty</a> component so you have control over whether to allow HTTP
TRACE calls against your Jetty endpoints.</li>
	<li>Polished the <a href="/confluence/display/CAMEL/Camel+Maven+Archetypes" title="Camel
Maven Archetypes">Camel Maven Archetypes</a> to let the projects be prepared for
<a href="/confluence/display/CAMEL/Testing" title="Testing">Testing</a> and fixed
any WARNs from Maven.</li>
	<li>Added <tt>dumpRouteStatsAsXml</tt> methods to <a href="/confluence/display/CAMEL/Camel+JMX"
title="Camel JMX">JMX</a> to make it easier to get the total performance stats as
XML, and in one JMX call.</li>
	<li><a href="/confluence/display/CAMEL/Graceful+Shutdown" title="Graceful Shutdown">Graceful
Shutdown</a> is now more aggressive if timeout occurred during shutdown, now rejecting
continue processing messages or redeliveries.</li>
	<li>Add <tt>ShutdownPrepared</tt> SPI to allow custom Services (also EIPs)
in routes to do custom code preparing for shutdown.</li>
	<li>The <tt>camel-archetype-java</tt> <a href="/confluence/display/CAMEL/Camel+Maven+Archetypes"
title="Camel Maven Archetypes">Camel Maven Archetypes</a> is now a pure Java DSL
based project (no longer Spring)</li>
	<li><a href="/confluence/display/CAMEL/JMS" title="JMS">JMS</a> consumer
is less verbose when logging uncaught exceptions occurred during process a message. Added
<tt>errorHandlerLoggingLevel</tt>, and <tt>errorHandlerLogStackTrace</tt>
options to tweak the logging verbosity.</li>
	<li>Added <tt>messageId</tt> as <a href="/confluence/display/CAMEL/MDC+logging"
title="MDC logging">MDC logging</a> key.</li>
	<li>Improved Camel's Transaction <a href="/confluence/display/CAMEL/Error+Handler"
title="Error Handler">Error Handler</a> logging to better pinpoint and correlate
redelivered messages (from eg a JMS broker), making reading the logs much easier.</li>
	<li>Added the timeout option to <a href="/confluence/display/CAMEL/Spring+Web+Services"
title="Spring Web Services">Spring Web Services</a> for specifying the read timeout
while invoking a webservice.</li>
	<li>Optimized <a href="/confluence/display/CAMEL/Type+Converter" title="Type Converter">Type
Converter</a> registry for possible concurrency contention when looking up a type converter.</li>
	<li>Improved <a href="/confluence/display/CAMEL/Simple" title="Simple">Simple</a>
language to work better with floating point numbers in <a href="/confluence/display/CAMEL/Predicate"
	<li>Camel is now less verbose when starting and stopping, whats being logged at <tt>INFO</tt>
	<li>Add support for keyed data queues to <a href="/confluence/display/CAMEL/JT400"
title="JT400">JT400</a> component.</li>
	<li><a href="/confluence/display/CAMEL/Idempotent+Consumer" title="Idempotent Consumer">Idempotent
Consumer</a> gets now enlisted into the JMX which allows to both detect the duplicate
message count as well as the operation to reset them.</li>
	<li>Thread pools is now unregistered from <a href="/confluence/display/CAMEL/Camel+JMX"
title="Camel JMX">JMX</a> (if the thread pool was registered in JMX) when the thread
pool is being shutdown by Camel. Notice that all mbeans will be unregistered from JMX when
Camel shutdown itself. This improvement is to unregister thread pools more eagerly, such as
when routes is being removed at runtime.</li>
	<li>Camel will now also copy the message headers for a JmsMessage if you use <tt>useOriginalMessage</tt>
in a <tt>onException</tt> definition.</li>
	<li>Added <tt>mockEndpointsAndSkip</tt> to <a href="/confluence/display/CAMEL/AdviceWith"
title="AdviceWith">AdviceWith</a> and the <a href="/confluence/display/CAMEL/Testing"
title="Testing">Test Kit</a></li>
	<li>The filter on <a href="/confluence/display/CAMEL/File2" title="File2">File</a>
and <a href="/confluence/display/CAMEL/FTP2" title="FTP2">FTP</a> components now
supports <tt>isDirectory</tt> parameter to let users filter on directories as
well. This can be used to skip unwanted directories, and thus speedup consuming files.</li>

<h3><a name="Camel2.10.0Release-Fixedissues"></a>Fixed issues</h3>

	<li>Fixed memory leak issue when dynamic adding and removing a lot of routes at runtime.</li>
	<li>Fixed potential NPE in <a href="/confluence/display/CAMEL/FTP2" title="FTP2">FTP</a>
consumer when using double slashes as starting directory.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Intercept#Intercept-InterceptSendToEndpoint">InterceptSendToEndpoint</a>
with a <a href="/confluence/display/CAMEL/Predicate" title="Predicate">when</a>
and <tt>skipSendToEndpoint=true</tt> should only skip sending if the predicate
was true.</li>
	<li>Fixed issue with <a href="/confluence/display/CAMEL/Bean+Binding" title="Bean
Binding">Bean Binding</a> directly in method name not working properly with method
call expressions.</li>
	<li>Fixed issue with using custom namespaces in <a href="/confluence/display/CAMEL/XPath"
title="XPath">XPath</a> expressions when using <a href="/confluence/display/CAMEL/Using+OSGi+blueprint+with+Camel"
title="Using OSGi blueprint with Camel">OSGi Blueprint</a></li>
	<li>Fixed <a href="/confluence/display/CAMEL/Validation" title="Validation">Validation</a>
to support <tt>xs:import</tt> in the schema files.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Content+Enricher" title="Content Enricher">Poll
Enrich</a> where timeout was not explicit configured to use the blocking mode. Was wrongly
using the non blocking mode.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Async" title="Async">Threads EIP</a>
to handle rejected policies to ensure the <a href="/confluence/display/CAMEL/Exchange"
title="Exchange">Exchange</a> will done the <tt>UnitOfWork</tt>, to ensure
the <a href="/confluence/display/CAMEL/Exchange" title="Exchange">Exchange</a>
will get de-registered from the inflight registry.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Delayer" title="Delayer">Delayer</a>
not working with a <a href="/confluence/display/CAMEL/Bean" title="Bean">Bean</a>
expression to define the delay when using XML DSL</li>
	<li>Fixed <a href="/confluence/display/CAMEL/JMS" title="JMS">JMS</a> consumer
will no longer complain by default about no errorHandler configured, if uncaught exception
was thrown during processing a message.</li>
	<li>Fixed the String trim issue of the <a href="/confluence/display/CAMEL/Simple"
title="Simple">Simple</a> expression.</li>
	<li>Fixed issue with <a href="/confluence/display/CAMEL/Recipient+List" title="Recipient
List">Recipient List</a> not triggering <a href="/confluence/display/CAMEL/Error+Handler"
title="Error Handler">Error Handler</a> for endpoints with non existing <a href="/confluence/display/CAMEL/Component"
	<li>Fixed <a href="/confluence/display/CAMEL/Load+Balancer" title="Load Balancer">Load
Balancer</a> now updating statistics in <a href="/confluence/display/CAMEL/Camel+JMX"
title="Camel JMX">JMX</a></li>
	<li>Fixed <a href="/confluence/display/CAMEL/SEDA" title="SEDA">SEDA</a>
producer configured with <tt>waitForTaskToComplete=Always</tt> to not handover
on-completion tasks, which otherwise could be processed too early.</li>
	<li>Fixed potential issue with configuring custom start and end tokens for <a href="/confluence/display/CAMEL/Simple"
title="Simple">Simple</a> language when using Spring XML.</li>
	<li>Fixed issue with <a href="/confluence/display/CAMEL/Type+Converter" title="Type
Converter">Type Converter</a> with NaN numbers being converter to integers.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/HTTP" title="HTTP">HTTP</a>,
<a href="/confluence/display/CAMEL/HTTP4" title="HTTP4">HTTP4</a>, and <a href="/confluence/display/CAMEL/Jetty"
title="Jetty">Jetty</a> producers to send empty HTTP headers, if a header has an
empty value.</li>
	<li>Fixed memory leaks when adding and removing a lot of routes at runtime. See this
<a href="/confluence/display/CAMEL/Memory+leak+when+adding+and+removing+routes+at+runtime"
title="Memory leak when adding and removing routes at runtime">FAQ</a> as well.</li>
	<li>Fixed issue with configuring a custom thread pool profile on some <a href="/confluence/display/CAMEL/EIP"

<h3><a name="Camel2.10.0Release-NewEnterpriseIntegrationPatterns"></a>New
<a href="/confluence/display/CAMEL/Enterprise+Integration+Patterns" title="Enterprise Integration
Patterns">Enterprise Integration Patterns</a></h3>

<h3><a name="Camel2.10.0Release-NewComponents"></a>New <a href="/confluence/display/CAMEL/Components"

	<li><tt>camel-aws</tt> - AWS-DDB - Amazon DynamoDB</li>
	<li><tt>camel-gson</tt> - For <a href="/confluence/display/CAMEL/JSON"
title="JSON">JSON</a> data format using Google GSon project</li>
	<li><tt>camel-mongodb</tt> - for <a href="/confluence/display/CAMEL/MongoDB"
title="MongoDB">MongoDB</a> integration</li>
	<li><tt>camel-ssh</tt> - For executing commands on a <a href="/confluence/display/CAMEL/SSH"
title="SSH">SSH</a> Server</li>
	<li><a href="/confluence/display/CAMEL/Stub" title="Stub">Stub</a> - For
stubbing endpoints, for development and testing purposes</li>
	<li><tt>camel-test-blueprint</tt> - For <a href="/confluence/display/CAMEL/Blueprint+Testing"
title="Blueprint Testing">Blueprint Testing</a></li>
	<li><tt>camel-test-spring</tt> - For <a href="/confluence/display/CAMEL/Spring+Testing"
title="Spring Testing">Spring Testing</a></li>
	<li><tt>camel-twitter</tt> - For integrating with <a href="/confluence/display/CAMEL/Twitter"
	<li><tt>camel-websocket</tt> - For using web socket</li>

<h3><a name="Camel2.10.0Release-DSLChanges"></a>DSL Changes</h3>

<h3><a name="Camel2.10.0Release-NewAnnotations"></a>New Annotations</h3>

<h3><a name="Camel2.10.0Release-NewDataFormatsDataFormat"></a>New <a
href="/confluence/display/CAMEL/Data+Format" title="Data Format">Data Formats</a></h3>

	<li><tt>camel-gson</tt> - For <a href="/confluence/display/CAMEL/JSON"
title="JSON">JSON</a> data format using Google GSon project</li>

<h3><a name="Camel2.10.0Release-NewLanguages"></a>New <a href="/confluence/display/CAMEL/Languages"

<h3><a name="Camel2.10.0Release-NewExamples"></a>New <a href="/confluence/display/CAMEL/Examples"

	<li>There is a <tt>camel-example-ssh</tt></li>

<h3><a name="Camel2.10.0Release-NewTutorials"></a>New <a href="/confluence/display/CAMEL/Tutorials"

<h2><a name="Camel2.10.0Release-APIchanges%2Fbreaking"></a>API changes/breaking</h2>

	<li>Added <tt>shutdownForced</tt>, and <tt>forceShutdown</tt>
methods to <tt>org.apache.camel.spi.ShutdownStrategy</tt></li>
	<li>Add boolean parameter to <tt>prepareShutdown</tt> on <tt>ShutdownAware</tt></li>
	<li>The <tt>errorHandler</tt> method in <tt>RouteBuilder</tt>
now returns <tt>void</tt>, as its used for only configuring context scoped error
	<li>Removed the constructor which takes custom start and end tokens from <tt>SimpleLanguage</tt>.
Instead use the change methods to set custom tokens.</li>
	<li>Added <tt>onThreadPoolRemove</tt>, and <tt>onErrorHandlerRemove</tt>
methods to <tt>LifecycleStrategy</tt></li>
	<li>Added <tt>isDirectory</tt> as parameter to <tt>accept</tt>
method on <tt>GenericFileFilter</tt></li>

<h2><a name="Camel2.10.0Release-Internal%2FNonAPIrefactoringsthatmayaffectusers"></a>Internal/Non
API refactorings that may affect users</h2>

	<li>Removed method <tt>setManagementName</tt> from <tt>CamelContext</tt>
as it should not be used by Camel end users</li>
	<li>Added <tt>isTransactedRedelivered</tt> method to <a href="/confluence/display/CAMEL/Exchange"

<h2><a name="Camel2.10.0Release-KnownIssues"></a>Known Issues</h2>

	<li>The <a href="/confluence/display/CAMEL/Tracer" title="Tracer">Tracer</a>
may not output all details for some situations such as when using <tt>onCompletion</tt>
or <tt>intercept</tt> etc.</li>
	<li>The project cannot fully build the site using Maven (eg running <tt>"mvn
site"</tt>. There is no plan to make this work as the project do not use the maven site.</li>
	<li>The source code cannot fully build with JDK 7</li>
	<li>JBoss 7 may report a WARN logging when running Camel as a WAR file.</li>

<h2><a name="Camel2.10.0Release-DependencyUpgrades"></a>Dependency Upgrades</h2>

	<li>AHC 1.6.5 to 1.7.1</li>
	<li>AWS 1.2.2 to 1.3.0</li>
	<li>Commons-codec 1.4 to 1.6</li>
	<li>Commons-net 2.2 to 3.0.1</li>
	<li>CXF 2.5.1 to 2.5.2</li>
	<li>Groovy 1.8.5 to 1.8.6</li>
	<li>Hadoop to 1.0.0</li>
	<li>Hazelcast to</li>
	<li>Jasypt 1.7 to 1.8</li>
	<li>Jetty 7.5.3 to 7.5.4</li>
	<li>JRuby 1.6.6 to 1.6.7</li>
	<li>Kratti 0.4.1 to  0.4.3</li>
	<li>Netty 3.2.6 to 3.3.1</li>
	<li>Shiro 1.1.0 to 1.2.0</li>
	<li>Spring 3.0.6 to 3.0.7</li>
	<li>Spring Integration 2.0.5 to 2.1.0</li>
	<li>Spring Security 3.0.7 to 3.1.0</li>
	<li>Tagsoup 1.2 to 1.2.1</li>

<h2><a name="Camel2.10.0Release-Importantchangestoconsiderwhenupgrading"></a>Important
changes to consider when upgrading</h2>

	<li>Moved <a href="/confluence/display/CAMEL/Spring+Testing" title="Spring Testing">Spring
Testing</a> from <tt>camel-test</tt> to <tt>camel-test-spring</tt>
	<li>Combination of <tt>skipSendToEndpoint=true</tt> and <tt>when</tt>
predicate now triggers conditional skipping (you may be relying on unconditional skipping
up until now)</li>
	<li>The thread name pattern has changed tokens to avoid clashing with <a href="/confluence/display/CAMEL/Using+PropertyPlaceholder"
title="Using PropertyPlaceholder">Using PropertyPlaceholder</a>, see <a href="/confluence/display/CAMEL/Threading+Model"
title="Threading Model">Threading Model</a> for more details.</li>
	<li>The <a href="/confluence/display/CAMEL/Content+Enricher" title="Content Enricher">Poll
Enrich</a> will now block if no messages is available, if no explicit timeout value
has been configured.</li>
	<li>Setting the option <tt>lazyLoadTypeConverter=true</tt> has been deprecated,
and will be removed in a future release. Best practice is type converters is loaded as part
of bootstrapping Camel.</li>
	<li>The <a href="/confluence/display/CAMEL/Testing" title="Testing">Camel Test
kit</a> do no longer load type converters lazy.</li>

<h2><a name="Camel2.10.0Release-Notice"></a>Notice</h2>

	<li>If you want to deploy Apache Camel 2.9.0 into Apache Karaf, we highly recommend
to use the '' configuration, which is part of Apache Karaf 2.2.5.</li>

<h2><a name="Camel2.10.0Release-GettingtheDistributions"></a>Getting the

<h3><a name="Camel2.10.0Release-BinaryDistributions"></a>Binary Distributions</h3>

<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<th class='confluenceTh'> Description </th>
<th class='confluenceTh'> Download Link </th>
<th class='confluenceTh'> PGP Signature file of download </th>
<td class='confluenceTd'> Windows Distribution </td>
<td class='confluenceTd'> <a href=""
class="external-link" rel="nofollow"></a> </td>
<td class='confluenceTd'> <a href=""
class="external-link" rel="nofollow"></a> </td>
<td class='confluenceTd'> Unix/Linux/Cygwin Distribution </td>
<td class='confluenceTd'> <a href=""
class="external-link" rel="nofollow">apache-camel-2.10.0.tar.gz</a> </td>
<td class='confluenceTd'> <a href=""
class="external-link" rel="nofollow">apache-camel-2.10.0.tar.gz.asc</a> </td>

<div class='panelMacro'><table class='infoMacro'><colgroup><col width='24'><col></colgroup><tr><td
valign='top'><img src="/confluence/images/icons/emoticons/information.gif" width="16"
height="16" align="absmiddle" alt="" border="0"></td><td><b>The above
URLs use redirection</b><br />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 href="" class="external-link"

<h3><a name="Camel2.10.0Release-SourceDistributions"></a>Source Distributions</h3>

<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<th class='confluenceTh'> Description </th>
<th class='confluenceTh'> Download Link </th>
<th class='confluenceTh'> PGP Signature file of download </th>
<td class='confluenceTd'> Source Distribution </td>
<td class='confluenceTd'> <a href=""
class="external-link" rel="nofollow"></a> </td>
<td class='confluenceTd'> <a href=""
class="external-link" rel="nofollow"></a> </td>

<h3><a name="Camel2.10.0Release-Gettingthe"></a>Getting the </h3>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href=""
class="grey">Change Notification Preferences</a>
        <a href="">View
        <a href="">View
        <a href=";showCommentArea=true#addcomment">Add

View raw message