camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "willem jiang (Confluence)" <conflue...@apache.org>
Subject [CONF] Apache Camel > Camel 2.12.0 Release
Date Thu, 12 Sep 2013 09:08:00 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/en/2176/1/1/_/styles/combined.css?spaceKey=CAMEL&amp;forWysiwyg=true"
type="text/css">
    </head>
<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="https://cwiki.apache.org/confluence/display/CAMEL/Camel+2.12.0+Release">Camel
2.12.0 Release</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~njiang">willem
jiang</a>
    </h4>
        <div id="versionComment">
        <b>Comment:</b>
        Added salesforce component<br />
    </div>
        <br/>
                         <h4>Changes (1)</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-stomp}}|Stomp] - For communicating
with [Stomp|http://stomp.github.io/] compliant message brokers, like [Apache ActiveMQ|http://activemq.apache.org]
or [ActiveMQ Apollo|http://activemq.apache.org/apollo/] <br>* [{{camel-vertx}}|Vertx]
- For working with the [Vertx|http://vertx.io/] [EventBus|http://vertx.io/core_manual_js.html#the-event-bus].
<br></td></tr>
            <tr><td class="diff-unchanged" >* [{{camel-weather}}|Weather] - For
polling weather information from [Open Weather Map|http://openweathermap.org] <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*
[{{camel-saleforce}}|Salesforce] - Allows you to interact with the [Salesforce|http://www.salesforce.com/]
using Java DTOs.  <br></td></tr>
            <tr><td class="diff-unchanged" >* [{{camel-yammer}}|Yammer] - Allows
you to interact with the [Yammer|http://yammer.com] enterprise social network <br>*
[{{camel-rabbitmq}}|RabbitMQ] - Allows you to interact with the [RabbitMQ|http://www.rabbitmq.com/].
<br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="Camel2.12.0Release-Camel2.12.0release"></a>Camel 2.12.0
release </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><a name="Camel2.12.0Release-NewandNoteworthy"></a>New and Noteworthy</h2>

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

<ul>
	<li><a href="/confluence/display/CAMEL/Endpoint+Annotations" title="Endpoint Annotations">Endpoint
Annotations</a> along with automatically created HTML documentation for the endpoint
parameters; this makes it easier for component developers to add a few refactoring-safe annotations
to their Endpoint or Consumer implementations and, (along with javadoc comments on the field
or setter method), get nice user documentation on how to use the endpoint for free.</li>
	<li><a href="/confluence/display/CAMEL/ComponentConfiguration" title="ComponentConfiguration">ComponentConfiguration</a>
API provides a handy API for tools developers to introspect on a Component to find all the
possible parameters, their types and any extra annotations (like Bean Validation Annotations)
to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for
configuring endpoints than just letting folks edit Strings.</li>
	<li><a href="/confluence/display/CAMEL/EndpointCompleter" title="EndpointCompleter">EndpointCompleter</a>
API provides a hook so that command line tools (like <a href="http://karaf.apache.org/manual/latest-2.3.x/users-guide/using-console.html"
class="external-link" rel="nofollow">Karaf's shell</a>), IDEs and web tools can get
(bash tab like) auto-completion on endpoint paths (such as file or directory names, message
queue names, database table names) when creating or using new endpoints</li>
	<li>Reduced stack-frames in use during routing, that also makes Camel's stack traces
being logged much less verbose. This also allows people to easier debug the internals of Camel
as less <tt>AsyncCallback</tt> callbacks are in use during routing.</li>
	<li>Easy to use <a href="/confluence/display/CAMEL/Message+History" title="Message
History">Message History</a> out of the box. And included message history as "route
stack-trace" when exceptions logged by <a href="/confluence/display/CAMEL/Error+Handler"
title="Error Handler">Error Handler</a> to make it easier for end users to spot where
the exception occurred.</li>
	<li><a href="/confluence/display/CAMEL/Spring+Web+Services" title="Spring Web Services">Spring
Web Services</a> now supports setting/receiving SOAP headers more easily using a header
on the Camel <a href="/confluence/display/CAMEL/Message" title="Message">Message</a>.</li>
	<li>Evaluating <a href="/confluence/display/CAMEL/Groovy" title="Groovy">Groovy</a>
expressions is faster as we cache the compiled scripts.</li>
	<li>Added <tt>base64</tt> option to <a href="/confluence/display/CAMEL/Shiro+Security"
title="Shiro Security">Shiro Security</a> to allow transferring security token over
<a href="/confluence/display/CAMEL/JMS" title="JMS">JMS</a> and other transports
as base64 encoded representation.</li>
	<li>Made it easier to use <a href="/confluence/display/CAMEL/Shiro+Security" title="Shiro
Security">Shiro Security</a> as the credentials can be provided in headers, when
sending a message to a secured route.</li>
	<li><a href="/confluence/display/CAMEL/Bindy" title="Bindy">Bindy</a> now
supports enums.</li>
	<li>Added new <a href="/confluence/display/CAMEL/BacklogDebugger" title="BacklogDebugger">BacklogDebugger</a>
to perform live debugging of messages during routing. The <a href="/confluence/display/CAMEL/BacklogDebugger"
title="BacklogDebugger">BacklogDebugger</a> has JMX API allows tooling to control
the debugger.</li>
	<li>While using the <a href="http://xircles.codehaus.org/projects/jackson" class="external-link"
rel="nofollow">Jackson library</a> through the <a href="/confluence/display/CAMEL/JSON"
title="JSON">JSON</a> Dataformat there's now a <tt>jsonView</tt> attribute
you could make use of directly inside the <a href="/confluence/display/CAMEL/DSL" title="DSL">DSL</a>
itself.</li>
	<li><a href="/confluence/display/CAMEL/SMPP" title="SMPP">SMPP</a> now
supports optional parameters in all commands where they are possible.</li>
	<li><a href="/confluence/display/CAMEL/JDBC" title="JDBC">JDBC</a> now
supports named parameters.</li>
	<li>Added timeout support for <a href="/confluence/display/CAMEL/Direct" title="Direct">Direct</a>
producers to wait for consumer to become active.</li>
	<li>Added <tt>stats</tt> action to <a href="/confluence/display/CAMEL/ControlBus"
title="ControlBus">ControlBus</a> to easily get performance statics in a single XML
message.</li>
	<li>Added support for request timeout on <a href="/confluence/display/CAMEL/Netty"
title="Netty">Netty</a> producer, and to configure logging level on <a href="/confluence/display/CAMEL/Netty"
title="Netty">Netty</a> consumer to be less noisy for ChannelClosedException which
can flood the logs when client disconnects abruptly.</li>
	<li><a href="/confluence/display/CAMEL/SpringBatch" title="SpringBatch">Spring
Batch</a> component producer now returns the <tt>JobExecution</tt> instance
as the output message. Users can use the <tt>JobExecution</tt> instance to perform
some operations using the Spring Batch API directly.</li>
	<li>Added support for NULL values in <a href="/confluence/display/CAMEL/SQL+Component"
title="SQL Component">SQL</a> with named parameters.</li>
	<li>Optimized <a href="/confluence/display/CAMEL/Jetty" title="Jetty">Jetty</a>
streaming responses in non-chunked mode; and as well using buffer sizes based on <tt>HttpServletResponse.getBufferSize()</tt>
instead of fixed size of 4kb.</li>
	<li>Added <tt>greedy</tt> option to <a href="/confluence/display/CAMEL/Polling+Consumer"
title="Polling Consumer">scheduled polling consumer</a>.</li>
	<li>Added support for accessing the length field on Java arrays in <a href="/confluence/display/CAMEL/Simple"
title="Simple">Simple</a> language.</li>
	<li>Added support for using JAXB annotations with Camel's Jackson <a href="/confluence/display/CAMEL/JSON"
title="JSON">JSON</a> component.</li>
	<li>Added the ability for <a href="/confluence/display/CAMEL/Bindy" title="Bindy">Bindy</a>
to skip content when parsing fixed-length records.</li>
	<li><a href="/confluence/display/CAMEL/MongoDB" title="MongoDB">MongoDB</a>
now supports aggregation queries.</li>
	<li><a href="/confluence/display/CAMEL/Netty" title="Netty">Netty</a> allows
to use shared Netty boss and worker thread pools.</li>
	<li>The <a href="/confluence/display/CAMEL/Camel+Maven+Archetypes" title="Camel
Maven Archetypes">Camel Maven Archetypes</a> for component and data format now packages
as OSGi bundles out of the box.</li>
	<li>Easier <a href="/confluence/display/CAMEL/Stream+caching" title="Stream caching">Stream
caching</a> configuration using <tt>StreamCachingStrategy</tt>. Also allows
spool directory per <a href="/confluence/display/CAMEL/CamelContext" title="CamelContext">CamelContext</a>
instead of shared per JVM. And insight at runtime using JMX management. As well allowing to
plugin 3rd party implementations.</li>
	<li>Improved <a href="/confluence/display/CAMEL/Netty" title="Netty">Netty</a>
to be able to join an UDP multicast group.</li>
	<li>Using Camel <a href="/confluence/display/CAMEL/Spring" title="Spring">Spring</a>
is now setting up Camel routes later in the process allow Spring to complete all of its dependency
injection, before Camel <tt>RouteBuilder</tt> instances is configured. This allows
to safely use Spring dependency injection in these <tt>RouteBuilder</tt> classes.</li>
	<li>Services in a <a href="/confluence/display/CAMEL/CamelContext" title="CamelContext">CamelContext</a>
which can only be enlisted once (eg it similar to a static in a JVM) has simpler and fixed
MBean names in JMX.</li>
	<li><a href="/confluence/display/CAMEL/SQL+Component" title="SQL Component">JDBC
based aggregation repository</a> for the <a href="/confluence/display/CAMEL/Aggregator2"
title="Aggregator2">Aggregate</a> EIP now supports optimistic locking, allows clustered
Camel applications to use a shared database for the aggregation repository.</li>
	<li><a href="/confluence/display/CAMEL/Recipient+List" title="Recipient List">Recipient
List</a> stores a property (<tt>Exchange.RECIPIENT_LIST_ENDPOINT</tt>) on
the <a href="/confluence/display/CAMEL/Exchange" title="Exchange">Exchange</a>
with the <a href="/confluence/display/CAMEL/URIs" title="URIs">URIs</a> of the
<a href="/confluence/display/CAMEL/Endpoint" title="Endpoint">Endpoint</a> the
message was sent to.</li>
	<li>Added <tt>mask</tt> option to <a href="/confluence/display/CAMEL/Camel+JMX"
title="Camel JMX">Camel JMX</a> to hide sensitive information such as passwords.</li>
	<li>Added <tt>outputType</tt> option supporting <tt>SelectList</tt>,
and <tt>SelectOne</tt> to <a href="/confluence/display/CAMEL/SQL+Component"
title="SQL Component">SQL Component</a> to dictate the output message body type when
doing SQL SELECT queries.</li>
	<li><a href="/confluence/display/CAMEL/Polling+Consumer" title="Polling Consumer">Polling
Consumer</a>s such as <a href="/confluence/display/CAMEL/File2" title="File2">File</a>,
and <a href="/confluence/display/CAMEL/FTP2" title="FTP2">FTP</a> now supports
using custom scheduler. Providing a new <a href="/confluence/display/CAMEL/Quartz2" title="Quartz2">Quartz2</a>,
and <a href="/confluence/display/CAMEL/Spring" title="Spring">Spring</a> based
out of the box, that allows to use CRON based scheduler.</li>
	<li><a href="/confluence/display/CAMEL/Polling+Consumer" title="Polling Consumer">Polling
Consumer</a>s such as <a href="/confluence/display/CAMEL/File2" title="File2">File</a>,
and <a href="/confluence/display/CAMEL/FTP2" title="FTP2">FTP</a> now supports
<em>backoff</em>, to let the consumer be less aggressive, when there has been
no messages to poll, or errors keeps occurring for a while.</li>
	<li>Added support for XML Encryption 1.1 algorithms in the <a href="/confluence/display/CAMEL/XMLSecurity+DataFormat"
title="XMLSecurity DataFormat">XMLSecurity data format</a>. It is now possible to
specify stronger digest algorithms when using RSA OAEP Key Transport algorithms.</li>
	<li><a href="/confluence/display/CAMEL/Netty" title="Netty">Netty</a> consumer
now unbinds/binds the acceptor when the route is suspended/resumed.</li>
	<li><a href="/confluence/display/CAMEL/EIP" title="EIP">EIP</a>s supporting
<tt>AggregationStrategy</tt> such as <a href="/confluence/display/CAMEL/Aggregator2"
title="Aggregator2">Aggregate</a>, <a href="/confluence/display/CAMEL/Splitter"
title="Splitter">Splitter</a>, <a href="/confluence/display/CAMEL/Content+Enricher"
title="Content Enricher">Content Enricher</a> now supports using a POJO as the <tt>AggregationStrategy</tt>,
which allows to implement the aggregate logic with no Camel API dependency. See more details
at the <a href="/confluence/display/CAMEL/Aggregator2" title="Aggregator2">Aggregate</a>
page.</li>
	<li><tt>camel-jpa</tt> upgraded to use native JPA API instead of Springs
deprecated JpaTemplate</li>
	<li>Improved validation of routes being misconfigured on startup, when using <tt>onException</tt>,
<tt>onCompletion</tt>, <tt>transacted</tt>, etc. as they must be configured
as top-level on the route (eg in the start), and not later (such as nested in a <a href="/confluence/display/CAMEL/Splitter"
title="Splitter">Splitter</a>).</li>
	<li>Added new @PropertyInject annotation to inject <a href="/confluence/display/CAMEL/Using+PropertyPlaceholder"
title="Using PropertyPlaceholder">property placeholders</a> to POJOs</li>
	<li>New class <tt>org.apache.camel.util.toolbox.AggregationStrategies</tt>
as a starting point to obtain commonly used Aggregation Strategies for Multicast, Splitter,
Aggregator, etc. EIPs.</li>
	<li>New <tt>FlexibleAggregationStrategy</tt> serving as a one-stop to perform
typical aggregation strategy logic out-of-the-box: filtering results, storing them in properties,
headers or bodies, as a list, casting results, etc.</li>
	<li>Improved performance when doing <a href="/confluence/display/CAMEL/Bean" title="Bean">Bean</a>
method calls using <a href="/confluence/display/CAMEL/Simple" title="Simple">Simple</a>
OGNL calls</li>
	<li>Improved <a href="/confluence/display/CAMEL/Dozer+Type+Conversion" title="Dozer
Type Conversion">Dozer Type Conversion</a> to work better with OSGi Blueprint (though
Dozer 5.5 may be required to work even better)</li>
	<li><a href="/confluence/display/CAMEL/JMS" title="JMS">JMS</a> now also
enlists topic destinations as managed endpoints in <a href="/confluence/display/CAMEL/Camel+JMX"
title="Camel JMX">JMX</a></li>
	<li><a href="/confluence/display/CAMEL/Graceful+Shutdown" title="Graceful Shutdown">Graceful
Shutdown</a> now allows to suppress logging after <tt>CamelContext</tt>
has been stopped, due to a timeout hit, and there may still be inflight <a href="/confluence/display/CAMEL/Exchange"
title="Exchange">Exchange</a>s that may afterwards be rejected being executed and
causing WARN logs; which now can be suppressed.</li>
	<li>Made it easy to add custom services on startup when testing with <a href="/confluence/display/CAMEL/Blueprint+Testing"
title="Blueprint Testing">Blueprint Testing</a>.</li>
	<li>XML Signature support via the <a href="/confluence/display/CAMEL/XML+Security+component"
title="XML Security component">XML Security component</a>.</li>
</ul>


<h3><a name="Camel2.12.0Release-FixedIssues"></a>Fixed Issues</h3>

<ul>
	<li>Fixed setting .id in Java DSL on some <a href="/confluence/display/CAMEL/EIP"
title="EIP">EIP</a>s such as the <a href="/confluence/display/CAMEL/Validate"
title="Validate">Validate</a></li>
	<li>Fixed <a href="/confluence/display/CAMEL/Dead+Letter+Channel" title="Dead Letter
Channel">Dead Letter Channel</a> always handled exception, which wasn't the case
if an <a href="/confluence/display/CAMEL/Exception+Clause" title="Exception Clause">Exception
Clause</a> was in use, which didn't had handled=true.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Using+PropertyPlaceholder" title="Using
PropertyPlaceholder">Using PropertyPlaceholder</a> in attributes defined on <tt>&lt;camelContext&gt;</tt>.</li>
	<li>All Camel <a href="/confluence/display/CAMEL/Components" title="Components">Components</a>
will configure their consumers when being created to ensure you can configure from <a href="/confluence/display/CAMEL/URIs"
title="URIs">URIs</a> with <tt>consumer.</tt> as prefix.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Quickfix" title="Quickfix">QuickfixJEndpoint</a>
to adhere a given InOut MEP correctly.</li>
	<li>Fixed using property placeholders in a <a href="/confluence/display/CAMEL/Simple"
title="Simple">Simple</a> predicate used inside a when in a <a href="/confluence/display/CAMEL/Content+Based+Router"
title="Content Based Router">Content Based Router</a> when using <a href="/confluence/display/CAMEL/Java+DSL"
title="Java DSL">Java DSL</a></li>
	<li>Fixed a race condition in <a href="/confluence/display/CAMEL/File2" title="File2">File</a>
consumer which may lead to a tiny window for another process to pickup a file, as the read
lock is committed before the file is moved afterwards etc. Now read locks is executed last.</li>
	<li><a href="/confluence/display/CAMEL/HTTP4" title="HTTP4">HTTP4</a> now
validates that only one instance of <tt>org.apache.camel.util.jsse.SSLContextParameters</tt>
is used per component, as multiple is not supported, and could lead to undesired side effects.</li>
	<li>Fixed possible dead-lock during <a href="/confluence/display/CAMEL/Graceful+Shutdown"
title="Graceful Shutdown">Graceful Shutdown</a> if a route starts from <a href="/confluence/display/CAMEL/SEDA"
title="SEDA">SEDA</a> and uses <a href="/confluence/display/CAMEL/Splitter" title="Splitter">Splitter</a>
or <a href="/confluence/display/CAMEL/Multicast" title="Multicast">Multicast</a>
and maximumRedeliveries was enabled as well.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Splitter" title="Splitter">TokenizeXML</a>
to support self closing tags.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Blueprint+Testing" title="Blueprint
Testing">Blueprint Testing</a> to work with <tt>isMockEndpointsAndSkip</tt>
and other similar functionality of the <tt>CamelBlueprintTestSupport</tt> class.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Routing+Slip" title="Routing Slip">Routing
Slip</a> to emit <tt>ExchangeSentEvents</tt> also</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Quartz" title="Quartz">Quartz</a>
routes with stateful jobs may not trigger if redeployment with changed endpoint uris.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Recipient+List" title="Recipient List">Recipient
List</a>, <a href="/confluence/display/CAMEL/Routing+Slip" title="Routing Slip">Routing
Slip</a>, and <a href="/confluence/display/CAMEL/Dynamic+Router" title="Dynamic Router">Dynamic
Router</a> EIPs to work with <a href="/confluence/display/CAMEL/Stream+caching" title="Stream
caching">Stream caching</a></li>
	<li>Fixed suspending/resuming Camel <a href="/confluence/display/CAMEL/Quartz" title="Quartz">Quartz</a>
routes</li>
	<li>Fixed <a href="/confluence/display/CAMEL/SQL+Component" title="SQL Component">SQL
Component</a> using queries with a single parameter and the data is JSON like structure
(having comma separators)</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Jetty" title="Jetty">Jetty</a>
to be able to use stream cached streams that was spooled to disk, as its reply message when
sending back reply to the caller.</li>
	<li>Fixed <tt>endChoice()</tt> in Java DSL to work when being nested in
parent <a href="/confluence/display/CAMEL/Content+Based+Router" title="Content Based Router">Content
Based Router</a>(s)</li>
	<li>Fixed <a href="/confluence/display/CAMEL/Lucene" title="Lucene">Lucene</a>
to reuse existing index directory if Camel is being restarted etc.</li>
	<li>Fixed using &lt;routeContextRef&gt; to not share the routes when using
multiple &lt;camelContext&gt;, but each &lt;camelContext&gt; have their own
route instances to not cause side-effects between the <a href="/confluence/display/CAMEL/CamelContext"
title="CamelContext">CamelContext</a>s.</li>
	<li>Fixed using type converter from <tt>NodeList</tt> -&gt; <tt>Node</tt></li>
	<li>Fixed having 2+ routes from the <b>same</b> JMS queue, not stop the
endpoint if there are still active listeners when a route is stopped.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/SEDA" title="SEDA">SEDA</a>
when using <tt>queueSize</tt> not able to identify its same queue size, when using
multiple <a href="/confluence/display/CAMEL/SEDA" title="SEDA">SEDA</a> endpoints
for the same queue name/size.</li>
	<li>Fixed using <tt>&lt;routeBuilder ref="name"/&gt;</tt> in OSGi
Blueprint when referring to a <tt>RouteBuilder</tt> from another bundle, exposed
in the OSGi service registry.</li>
	<li>Fixed OSGi Blueprint in some situations causing a <tt>CircularDependencyException</tt>
when using Camel namespaces outside a <tt>&lt;camelContext&gt;</tt>, being
referred from inside the <tt>&lt;camelContext&gt;</tt>.</li>
	<li>Fixed <a href="/confluence/display/CAMEL/HTTP4" title="HTTP4">HTTP4</a>
in bridge mode to not store cookies, which otherwise would eat up memory.</li>
</ul>


<h3><a name="Camel2.12.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.12.0Release-NewComponents"></a>New <a href="/confluence/display/CAMEL/Components"
title="Components">Components</a></h3>

<ul>
	<li><a href="/confluence/display/CAMEL/DataFormat+Component" title="DataFormat Component"><tt>camel-core</tt></a>
- A Camel <a href="/confluence/display/CAMEL/DataFormat+Component" title="DataFormat Component">DataFormat
Component</a> for working with <a href="/confluence/display/CAMEL/Data+Format" title="Data
Format">Data Format</a>s as if it was a regular <a href="/confluence/display/CAMEL/Component"
title="Component">Component</a> supporting <a href="/confluence/display/CAMEL/Endpoint"
title="Endpoint">Endpoint</a>s and <a href="/confluence/display/CAMEL/URIs" title="URIs">URIs</a>.</li>
	<li><a href="/confluence/display/CAMEL/Disruptor" title="Disruptor"><tt>camel-disruptor</tt></a>
- <a href="/confluence/display/CAMEL/SEDA" title="SEDA">SEDA</a> behavior using
the ultra-fast <a href="https://github.com/LMAX-Exchange/disruptor" class="external-link"
rel="nofollow">LMAX Disruptor</a> library.</li>
	<li><a href="/confluence/display/CAMEL/Geocoder" title="Geocoder"><tt>camel-geocoder</tt></a>
- For looking up geocodes (latitude, longitude) for a given address, or reverse lookup with
<a href="https://code.google.com/p/geocoder-java/" class="external-link" rel="nofollow">Java
API for Google Geocoder</a></li>
	<li><a href="/confluence/display/CAMEL/LevelDB" title="LevelDB"><tt>camel-leveldb</tt></a>
- Added docs for this component.</li>
	<li><a href="/confluence/display/CAMEL/Mustache" title="Mustache"><tt>camel-mustache</tt></a>
- For templating using <a href="http://mustache.github.io/" class="external-link" rel="nofollow">Mustache</a></li>
	<li><a href="/confluence/display/CAMEL/MVEL+Component" title="MVEL Component"><tt>camel-mvel</tt></a>
- For templating using <a href="http://mvel.codehaus.org/" class="external-link" rel="nofollow">MVEL</a></li>
	<li><a href="/confluence/display/CAMEL/Netty+HTTP" title="Netty HTTP"><tt>camel-netty-http</tt></a>
- HTTP component using <a href="/confluence/display/CAMEL/Netty" title="Netty">Netty</a>
as transport</li>
	<li><a href="/confluence/display/CAMEL/Quartz2" title="Quartz2"><tt>camel-quartz2</tt></a>
- For scheduling using the Quartz 2.x scheduler</li>
	<li><a href="/confluence/display/CAMEL/SAP+NetWeaver" title="SAP NetWeaver"><tt>camel-sap-netweaver</tt></a>
- For integration with <a href="http://scn.sap.com/community/developer-center/netweaver-gateway"
class="external-link" rel="nofollow">SAP NetWeaver Gateway</a></li>
	<li><a href="/confluence/display/CAMEL/Stomp" title="Stomp"><tt>camel-stomp</tt></a>
- For communicating with <a href="http://stomp.github.io/" class="external-link" rel="nofollow">Stomp</a>
compliant message brokers, like <a href="http://activemq.apache.org" class="external-link"
rel="nofollow">Apache ActiveMQ</a> or <a href="http://activemq.apache.org/apollo/"
class="external-link" rel="nofollow">ActiveMQ Apollo</a></li>
	<li><a href="/confluence/display/CAMEL/Vertx" title="Vertx"><tt>camel-vertx</tt></a>
- For working with the <a href="http://vertx.io/" class="external-link" rel="nofollow">Vertx</a>
<a href="http://vertx.io/core_manual_js.html#the-event-bus" class="external-link" rel="nofollow">EventBus</a>.</li>
	<li><a href="/confluence/display/CAMEL/Weather" title="Weather"><tt>camel-weather</tt></a>
- For polling weather information from <a href="http://openweathermap.org" class="external-link"
rel="nofollow">Open Weather Map</a></li>
	<li><a href="/confluence/display/CAMEL/Salesforce" title="Salesforce"><tt>camel-saleforce</tt></a>
- Allows you to interact with the <a href="http://www.salesforce.com/" class="external-link"
rel="nofollow">Salesforce</a> using Java DTOs.</li>
	<li><a href="/confluence/display/CAMEL/Yammer" title="Yammer"><tt>camel-yammer</tt></a>
- Allows you to interact with the <a href="http://yammer.com" class="external-link" rel="nofollow">Yammer</a>
enterprise social network</li>
	<li><a href="/confluence/display/CAMEL/RabbitMQ" title="RabbitMQ"><tt>camel-rabbitmq</tt></a>
- Allows you to interact with the <a href="http://www.rabbitmq.com/" class="external-link"
rel="nofollow">RabbitMQ</a>.</li>
	<li><a href="/confluence/display/CAMEL/XML+Security+component" title="XML Security
component"><tt>camel-xmlsecurity</tt></a> - Support for the XML Signature
specification.</li>
</ul>


<h3><a name="Camel2.12.0Release-NewDSL"></a>New DSL</h3>

<ul>
	<li>New fluent builder for Aggregation Strategies: <tt>org.apache.camel.util.toolbox.AggregationStrategies</tt>.</li>
</ul>


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

<ul>
	<li>@PropertyInject</li>
</ul>


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

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

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

<ul>
	<li><a href="/confluence/display/CAMEL/MyBatis+Example" title="MyBatis Example">MyBatis
Example</a></li>
	<li><a href="/confluence/display/CAMEL/Netty+HTTP+Server+Example" title="Netty HTTP
Server Example">Netty HTTP Server Example</a></li>
	<li><tt>camel-example-jdbc</tt> - An example using <a href="/confluence/display/CAMEL/JDBC"
title="JDBC">JDBC</a> component with an embedded database</li>
	<li><tt>camel-example-restlet-jdbc</tt> - An example using <a href="/confluence/display/CAMEL/Restlet"
title="Restlet">Restlet</a> and <a href="/confluence/display/CAMEL/JDBC" title="JDBC">JDBC</a>
with an embedded database</li>
</ul>


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

<h2><a name="Camel2.12.0Release-APIchanges"></a>API changes</h2>

<ul>
	<li>The interface <tt>org.apache.camel.api.management.mbean.ManagedTracerBacklogMBean</tt>
has been renamed to <tt>org.apache.camel.api.management.mbean.ManagedBacklogTracerMBean</tt></li>
	<li>Added <tt>inMemory</tt>, and <tt>length</tt> methods to
<tt>org.apache.camel.StreamCache</tt></li>
	<li>Changed the parameter type <tt>ProcessorDefinition</tt> to <tt>NamedNode</tt>
on method <tt>getObjectNameForProcessor</tt> in interface <tt>org.apache.camel.spi.ManagementNamingStrategy</tt></li>
	<li>Added <tt>removeTypeConverter</tt> method to <tt>org.apache.camel.spi.TypeConverterRegistry</tt></li>
	<li>Added <tt>allowNull</tt> method to <tt>org.apache.camel.TypeConverter</tt></li>
	<li>Added <tt>hasTimeoutOccurred()</tt> method to <tt>ShutdownStrategy</tt></li>
</ul>



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

<h2><a name="Camel2.12.0Release-DependencyUpgrades"></a>Dependency Upgrades</h2>
<ul>
	<li>AHC 1.7.11 to 1.7.19</li>
	<li>AWS Java SDK 1.3.27 to 1.5.1</li>
	<li>Beanio from 2.0.5 to 2.0.6</li>
	<li>Bouncy Castle 1.47 to 1.49</li>
	<li>Commons Codec 1.6 to 1.8</li>
	<li>Commons Net 3.1 to 3.3</li>
	<li>Commons Httpclient 4.2.3 to 4.2.5</li>
	<li>Commons Httpcore 4.2.3 to 4.2.4</li>
	<li>CXF 2.7.4 to 2.7.6</li>
	<li>Disruptor 3.1.1 to 3.2.0</li>
	<li>Ehcache 2.5.2 to 2.7.2</li>
	<li>GAE 1.7.4 to 1.8.2</li>
	<li>HAPI 2.0 to 2.1</li>
	<li>Groovy 2.1.3 to 2.1.6</li>
	<li>Hadoop 1.1.1 to 1.2.0</li>
	<li>HBase 0.94.6 to 0.94.10</li>
	<li>Hawtdispatch 1.13 to 1.17</li>
	<li>Hibernate Validator 4.1.0.Final to 5.0.1.Final</li>
	<li>Hibernate 4.2.3 to 4.2.4</li>
	<li>Jackson 2.1.4 to 2.2.2</li>
	<li>Jersey 1.13 to 1.17.1</li>
	<li>Jettison 1.3.3 to 1.3.4</li>
	<li>JRuby 1.7.2 to 1.7.4</li>
	<li>Krati 0.4.8 to 0.4.9</li>
	<li>Leveldbjni 1.6 to 1.7</li>
	<li>Mail 1.4.5 to 1.4.7</li>
	<li>MongoDB Java Driver 2.9.1 to 2.11.2</li>
	<li>MQTT Client 1.4 to 1.5</li>
	<li>MVEL 2.1.3.Final to 2.1.6.Final</li>
	<li>Netty 3.6.5 to 3.6.6</li>
	<li>OpenEJB 4.5.1 to 4.5.2</li>
	<li>OpenJPA 2.2.1 to 2.2.2</li>
	<li>Saxon 9.4.0.4 to 9.5.0.2</li>
	<li>Scala 2.10.1 to 2.10.2</li>
	<li>Shiro 1.2.1 to 1.2.2</li>
	<li>SNMP4J 2.1.0 to 2.2.2</li>
	<li>Spring 3.1.4.RELEASE to 3.2.4.RELEASE</li>
	<li>Spring Batch 2.1.9.RELEASE to 2.2.1.RELEASE</li>
	<li>Spring Data Redis 1.0.3.RELEASE to 1.0.4.RELEASE</li>
	<li>Spring Security 3.1.3.RELEASE to 3.1.4.RELEASE</li>
	<li>Spring Web Services 2.1.2 to 2.1.3</li>
	<li>TestNG 6.8 to 6.8.5</li>
	<li>XML Security (Santuario) 1.5.2 to 1.5.5.</li>
	<li>XStream 1.4.3 to 1.4.4</li>
</ul>


<h2><a name="Camel2.12.0Release-Internalchanges"></a>Internal changes</h2>
<ul>
	<li>The following classes in <tt>org.apache.camel.processor</tt> has been
removed as they are no longer needed due internal optimization: <tt>UnitOfWorkProcessor</tt>,
<tt>ChildUnitOfWorkProcessor</tt>, <tt>RouteContextProcessor</tt>,
<tt>RouteInflightRepositoryProcessor</tt>, and <tt>RoutePolicyProcessor</tt></li>
</ul>


<h2><a name="Camel2.12.0Release-Changesthatmayaffectendusers"></a>Changes
that may affect end users</h2>
<ul>
	<li>The <a href="/confluence/display/CAMEL/File2" title="File2">File</a>
and <a href="/confluence/display/CAMEL/FTP2" title="FTP2">FTP</a> consumers when
using idempotent repository will no longer invoke <tt>contains</tt> with a directory
name; this has been changed to only be checked for files.</li>
	<li>Shutting down using <a href="/confluence/display/CAMEL/Graceful+Shutdown" title="Graceful
Shutdown">Graceful Shutdown</a> now requires the timeout value to be positive. And
improved logic to avoid getting stuck in waiting for inflight messages, and having counter
go negative.</li>
	<li><a href="/confluence/display/CAMEL/Tracer" title="Tracer">Tracer</a>
now requires explicitly to be enabled on <tt>CamelContext</tt> to be available
and in use.</li>
	<li>The class <tt>org.apache.camel.processor.interceptor.BacklogTracerInterceptor</tt>
has been removed as it was no longer needed due internal optimizations.</li>
	<li>The <a href="/confluence/display/CAMEL/Stream+caching" title="Stream caching">Stream
caching</a> default threshold for spooling to disk has been changed from 64kb to 128kb.</li>
	<li>The unary operators in <a href="/confluence/display/CAMEL/Simple" title="Simple">Simple</a>
is now only applied on functions</li>
	<li>Using Camel <a href="/confluence/display/CAMEL/Spring" title="Spring">Spring</a>
is now setting up Camel routes later in the process allow Spring to complete all of its dependency
injection, before Camel <tt>RouteBuilder</tt> instances is configured. This allows
to safely use Spring dependency injection in these <tt>RouteBuilder</tt> classes.</li>
	<li>Changing destination using JMX on <tt>org.apache.camel.api.management.mbean.ManagedSendProcessorMBean</tt>
no longer supported.</li>
	<li>Camel now uses <tt>xxxxxx</tt> instead of <tt>******</tt>
when masking passwords (sanitize) when logging <a href="/confluence/display/CAMEL/URIs"
title="URIs">URIs</a> in the log. Using <tt>xxxxx</tt> is more friendly
with JMX naming.</li>
	<li>The <tt>DefaultProducer</tt> now delegates to the <tt>Endpoint</tt>
in the <tt>isSingleton()</tt> method call, to use the same value as its endpoint.</li>
	<li>Requests that use RSA v1.5 as the key transport algorithm will be rejected in the
camel-xmlsecurity component, unless this algorithm has been explicitly configured.</li>
	<li>The <a href="/confluence/display/CAMEL/Camel+Maven+Plugin" title="Camel Maven
Plugin">Camel Maven Plugin</a> now uses "compile+runtime" as scope for required dependencies
added to the classpath when running the plugin. This ensures also dependencies with provided
scope gets included.</li>
	<li>The <tt>userConfigURL</tt> option from <a href="/confluence/display/CAMEL/FOP"
title="FOP">FOP</a> now loads the resource from classpath by default.</li>
</ul>



<h2><a name="Camel2.12.0Release-Importantchangestoconsiderwhenupgrading"></a>Important
changes to consider when upgrading</h2>
<ul>
	<li>Spring 3.0.x is no longer supported.</li>
	<li>The usage of the deprecated built-in <tt>CommonsHttpMessageSender</tt>
has been replaced with <tt>HttpUrlConnectionMessageSender</tt> by <a href="/confluence/display/CAMEL/Spring+Web+Services"
title="Spring Web Services">Spring Web Services</a>. Consider this in case either
the <tt>timeout</tt> or <tt>sslContextParameters</tt> option is used
through the Producer of this component.</li>
	<li><tt>camel-scala-29</tt> module has been removed.</li>
</ul>


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

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

<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Description </th>
<th class='confluenceTh'> Download Link </th>
<th class='confluenceTh'> PGP Signature file of download </th>
</tr>
<tr>
<td class='confluenceTd'> Windows Distribution </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.12.0/apache-camel-2.12.0.zip"
class="external-link" rel="nofollow">apache-camel-2.12.0.zip</a> </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dist/camel/apache-camel/2.12.0/apache-camel-2.12.0.zip.asc"
class="external-link" rel="nofollow">apache-camel-2.12.0.zip.asc</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Unix/Linux/Cygwin Distribution </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.12.0/apache-camel-2.12.0.tar.gz"
class="external-link" rel="nofollow">apache-camel-2.12.0.tar.gz</a> </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dist/camel/apache-camel/2.12.0/apache-camel-2.12.0.tar.gz.asc"
class="external-link" rel="nofollow">apache-camel-2.12.0.tar.gz.asc</a> </td>
</tr>
</tbody></table>
</div>

<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="http://www.mozilla.com/en-US/firefox/" class="external-link"
rel="nofollow">FireFox</a></td></tr></table></div>

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

<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Description </th>
<th class='confluenceTh'> Download Link </th>
<th class='confluenceTh'> PGP Signature file of download </th>
</tr>
<tr>
<td class='confluenceTd'> Source for Windows </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.12.0/apache-camel-2.12.0-src.zip"
class="external-link" rel="nofollow">apache-camel-2.12.0-src.zip</a> </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dist/camel/apache-camel/2.12.0/apache-camel-2.12.0-src.zip.asc"
class="external-link" rel="nofollow">apache-camel-2.12.0-src.zip.asc</a> </td>
</tr>
</tbody></table>
</div>


<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<tr>
<td class='confluenceTd'> Source for Unix/Linux/Cygwin </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.12.0/apache-camel-2.12.0-src.tar.gz"
class="external-link" rel="nofollow">apache-camel-2.12.0-src.tar.gz</a> </td>
<td class='confluenceTd'> <a href="http://www.apache.org/dist/camel/apache-camel/2.12.0/apache-camel-2.12.0-src.tar.gz.asc"
class="external-link" rel="nofollow">apache-camel-2.12.0-src.tar.gz.asc</a> </td>
</tr>
</tbody></table>
</div>


<h3><a name="Camel2.12.0Release-GettingtheBinariesusingMaven2"></a>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 href="http://maven.apache.org/guides/introduction/introduction-to-the-pom.html"
class="external-link" rel="nofollow">Maven POM</a> is:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Default; brush: xml; gutter: false" style="font-size:12px; font-family:
ConfluenceInstalledFont,monospace;">
&lt;dependency&gt;
  &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
  &lt;artifactId&gt;camel-core&lt;/artifactId&gt;
  &lt;version&gt;2.12.0&lt;/version&gt;
&lt;/dependency&gt;
</pre>
</div></div>

<h3><a name="Camel2.12.0Release-GitTagCheckout"></a>Git Tag Checkout</h3>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Default; brush: java; gutter: false" style="font-size:12px; font-family:
ConfluenceInstalledFont,monospace;">
git clone https://git-wip-us.apache.org/repos/asf/camel.git
git checkout origin/camel-2.12.0 -b camel-2.12.0
</pre>
</div></div>

<h2><a name="Camel2.12.0Release-Changelog"></a>Changelog</h2>

<p>For a more detailed view of new features and bug fixes, see the:</p>
<ul>
	<li><a href="http://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311211&amp;version=12323968&amp;styleName=Html"
class="external-link" rel="nofollow">release notes for 2.12.0</a></li>
</ul>

    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;" class="grey">
                        <a href="https://cwiki.apache.org/confluence/users/removespacenotification.action?spaceKey=CAMEL">Stop
watching space</a>
            <span style="padding: 0px 5px;">|</span>
                <a href="https://cwiki.apache.org/confluence/users/editmyemailsettings.action">Change
email notification preferences</a>
</div>
        <a href="https://cwiki.apache.org/confluence/display/CAMEL/Camel+2.12.0+Release">View
Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=31819073&revisedVersion=162&originalVersion=161">View
Changes</a>
                |
        <a href="https://cwiki.apache.org/confluence/display/CAMEL/Camel+2.12.0+Release?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message