You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bu...@apache.org on 2014/07/08 10:18:07 UTC

svn commit: r915455 [1/2] - in /websites/production/camel/content: cache/main.pageCache camel-2140-release.html dropbox.html freemarker.html stringtemplate.html velocity.html

Author: buildbot
Date: Tue Jul  8 08:18:06 2014
New Revision: 915455

Log:
Production update by buildbot for camel

Added:
    websites/production/camel/content/dropbox.html
Modified:
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/camel-2140-release.html
    websites/production/camel/content/freemarker.html
    websites/production/camel/content/stringtemplate.html
    websites/production/camel/content/velocity.html

Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.

Modified: websites/production/camel/content/camel-2140-release.html
==============================================================================
--- websites/production/camel/content/camel-2140-release.html (original)
+++ websites/production/camel/content/camel-2140-release.html Tue Jul  8 08:18:06 2014
@@ -87,7 +87,7 @@
         <tr>
         <td valign="top" width="100%">
 <div class="wiki-content maincontent"><h1 id="Camel2.14.0Release-Camel2.14.0release(currentlyinprogress)">Camel 2.14.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.14.0Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome to the 2.14.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)</p><ul><li>Support for running on Java 1.8 JVMs</li><li>Spring 4.x supported.</li><li>Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as expression.</li><li>Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic <a shape="rect" href="eip.html">EIP</a>s.</li><li>Added event notification for routes added and removed.</li><li>Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off.</li><li><a shape="rect" href="nett
 y-http.html">Netty HTTP</a>&#160;producer now supports the <span>CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server.</span></li><li><span><a shape="rect" href="polling-consumer.html">Polling Consumer</a>&#160;allows to configure initial queue size and whether to block when full when using the default&#160;<code>EventDrivenPollingConsumer</code> which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered.</span></li><li><span><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7435">Added</a> a generic callback to configure the <a shape="rect" href="apns.html">APNS</a> service builder.</span></li><li><span>Added&#160;<code>StreamList</code> option to the&#160;<a shape="rect" href="jdbc.html">JDBC</a> component</span></li><li>Allow to define Simple expressions for sql parameters of the <a shape="rect" href="sql-co
 mponent.html">SQL</a> component.<span><br clear="none"></span></li><li>A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures)</li><li>Added option&#160;<code>parallelAggregate</code> to <a shape="rect" href="multicast.html">Multicast</a>, <a shape="rect" href="splitter.html">Splitter</a> and <a shape="rect" href="recipient-list.html">Recipient List</a>&#160;EIPs</li></ul><h3 id="Camel2.14.0Release-FixedIssues">Fixed Issues</h3><ul><li>Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run.</li><li><a shape="rect" href="netty-http.html">Netty HTTP</a> now returns HTTP status 404 if resource not found instead of 503.</li><li>Fixed the <a shape="rect" class="external-link" href="https://camel.apache.org/mongodb.html">MongoDB</a>&#160;<code>readPreference</code>&#160;option which used to cause an <code>IllegalArgumentException</code>&#160
 ;to be thrown.</li><li>Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused.</li><li>Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP&#160;</li><li>Improved stability when testing with&#160;<code>camel-test-blueprint</code> component.</li><li><a shape="rect" href="netty-http.html">Netty HTTP</a>&#160;now <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7506">removes</a> <code>headerFilterStrategy</code> option after resolving<span class="overlay-icon aui-icon aui-icon-small aui-iconfont-edit">&#160;</span>it</li><li>Fixed <a shape="rect" href="aggregator2.html">POJO aggregating</a> when the parameter type was referring to a type that was class annotated.</li><li>Fixed&#160;<a shape="rect" href="mybatis.html">MyBatis</a>&#160;to keep the message body as-is when calling stored procedures, if the procedure returns data as OUT paramet
 ers.</li><li>Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle.</li><li>Fixed <a shape="rect" href="advicewith.html">Advice-With</a> to work with transacted routes defined in XML DSL</li><li>Fixed <a shape="rect" href="advicewith.html">Advice-With</a> to work with Content Based Router when adding outputs to the when clauses.</li><li>Improved&#160;<span><code>NettyWorkerPoolBuilder#build</code> <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7583">visibility</a>.</span></li></ul><h3 id="Camel2.14.0Release-New">New <a shape="rect" href="enterprise-integration-patterns.html">Enterprise Integration Patterns</a></h3><ul><li><a shape="rect" href="load-balancer.html">Circuit Breaker</a> pattern implemented as a Load Balancer policy</li></ul><h3 id="Camel2.14.0Release-New.1">New <a shape="rect" href="components.html">Components</a></h3><ul><li>camel-ahc-ws</li><li>camel-atmosphere-websocket</li><li>camel-box</li><li><a
  shape="rect" href="openshift.html">camel-openshift</a></li><li><a shape="rect" href="gora.html">camel-gora</a></li><li><a shape="rect" href="spark-rest.html">camel-spar</a><a shape="rect" href="spark-rest.html">k-rest</a></li></ul><h3 id="Camel2.14.0Release-New.2">New <a shape="rect" href="camel-maven-archetypes.html">Camel Maven Archetypes</a></h3><h3 id="Camel2.14.0Release-NewDSL">New DSL</h3><h3 id="Camel2.14.0Release-NewAnnotations">New Annotations</h3><h3 id="Camel2.14.0Release-NewDataFormats">New <a shape="rect" href="data-format.html">Data Formats</a></h3><ul><li><a shape="rect" href="gora.html">camel-</a><a shape="rect" href="barcode-data-format.html">barcode</a></li></ul><h3 id="Camel2.14.0Release-New.3">New <a shape="rect" href="languages.html">Languages</a></h3><ul><li>XMLTokenizer</li></ul><h3 id="Camel2.14.0Release-New.4">New <a shape="rect" href="examples.html">Examples</a></h3><h3 id="Camel2.14.0Release-New.5">New <a shape="rect" href="tutorials.html">Tutorials</a></
 h3><h3 id="Camel2.14.0Release-NewTooling">New Tooling</h3><h2 id="Camel2.14.0Release-APIchanges">API changes</h2><ul><li>Changed ...</li></ul><h2 id="Camel2.14.0Release-KnownIssues">Known Issues</h2><h2 id="Camel2.14.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>Atomikos 3.9.2 to 3.9.3</li><li>Commons-codec 1.8 to 1.9</li><li>CXF 2.7.11 to 3.0.0</li><li>Deltaspike 0.7 to 1.0.0</li><li>Dozer 5.4.0 to 5.5.1</li><li>EhCache 2.8.1 t
 o 2.8.3</li><li>Groovy 2.2.2 to 2.3.3</li><li>Guava 16.0.1 to 17.0</li><li>JRuby 1.7.10 to 1.7.12</li><li>MongoDB-Java-Driver 2.11.4 to 2.12.0</li><li>RabbitMQ AMQ Client 3.2.2 to 3.3.0</li><li>RxJava 0.17.5 to 0.19.4</li><li>Scala 2.10.3 to 2.10.4</li><li>Snmp4j 2.2.5 to 2.3.0</li><li>SSHD 0.10.1 to 0.11.0</li><li>spring-redis 1.1.0 to 1.3.0</li></ul><h2 id="Camel2.14.0Release-Internalchanges">Internal changes</h2><ul><li>Changed ...</li></ul><h2 id="Camel2.14.0Release-Changesthatmayaffectendusers">Changes that may affect end users</h2><ul><li><a shape="rect" href="polling-consumer.html">Polling Consumer</a>&#160;allows to configure initial queue size and whether to block when full when using the default&#160;<code>EventDrivenPollingConsumer</code> which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered.</li></ul><h2 id="Camel2.14.0Release-Importantchangestoconsiderwhenupgrading">Important change
 s to consider when upgrading</h2><ul><li>Java 1.6 no longer supported.<br clear="none"><br clear="none"></li></ul><h2 id="Camel2.14.0Release-GettingtheDistributions">Getting the Distributions</h2><h3 id="Camel2.14.0Release-BinaryDistributions">Binary Distributions</h3><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Windows Distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.14.0/apache-camel-2.14.0.zip">apache-camel-2.14.0.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.o
 rg/dist/camel/apache-camel/2.14.0/apache-camel-2.14.0.zip.asc">apache-camel-2.14.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.14.0/apache-camel-2.14.0.tar.gz">apache-camel-2.14.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.14.0/apache-camel-2.14.0.tar.gz.asc">apache-camel-2.14.0.tar.gz.asc</a></p></td></tr></tbody></table></div><h3 id="Camel2.14.0Release-SourceDistribution">Source Distribution</h3><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th colspan="1" rowspan="1" class=
 "confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Source</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.14.0/apache-camel-2.14.0-src.zip">apache-camel-2.14.0-src.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/camel/apache-camel/2.14.0/apache-camel-2.14.0-src.zip.asc">apache-camel-2.14.0-src.zip.asc</a></p></td></tr></tbody></table></div><h3 id="Camel2.14.0Release-GettingtheBinariesusingMaven2">Getting the Binaries using Maven 2</h3><p>To use this release in your maven project, the proper dependency configuration that you should use in your <a shape="rect" class="external-link" href="http://maven.apache.org/guides/introduction/introduction-to-the-pom.html">Maven POM</a> is:</p><div class="code panel pdl" style="bo
 rder-width: 1px;"><div class="codeContent panelContent pdl">
+<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.14.0Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome to the 2.14.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)</p><ul><li>Support for running on Java 1.8 JVMs</li><li>Spring 4.x supported.</li><li>Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as expression.</li><li>Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic <a shape="rect" href="eip.html">EIP</a>s.</li><li>Added event notification for routes added and removed.</li><li>Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off.</li><li><a shape="rect" href="nett
 y-http.html">Netty HTTP</a>&#160;producer now supports the <span>CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server.</span></li><li><span><a shape="rect" href="polling-consumer.html">Polling Consumer</a>&#160;allows to configure initial queue size and whether to block when full when using the default&#160;<code>EventDrivenPollingConsumer</code> which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered.</span></li><li><span><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7435">Added</a> a generic callback to configure the <a shape="rect" href="apns.html">APNS</a> service builder.</span></li><li><span>Added&#160;<code>StreamList</code> option to the&#160;<a shape="rect" href="jdbc.html">JDBC</a> component</span></li><li>Allow to define Simple expressions for sql parameters of the <a shape="rect" href="sql-co
 mponent.html">SQL</a> component.<span><br clear="none"></span></li><li>A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures)</li><li>Added option&#160;<code>parallelAggregate</code> to <a shape="rect" href="multicast.html">Multicast</a>, <a shape="rect" href="splitter.html">Splitter</a> and <a shape="rect" href="recipient-list.html">Recipient List</a>&#160;EIPs</li><li>Support to set the variable map from message header in <a shape="rect" href="velocity.html">Velocity</a>, <a shape="rect" href="freemarker.html">Freemarker</a>, <a shape="rect" href="stringtemplate.html">StringTemplate</a>.</li></ul><h3 id="Camel2.14.0Release-FixedIssues">Fixed Issues</h3><ul><li>Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run.</li><li><a shape="rect" href="netty-http.html">Netty HTTP</a> now returns HTTP status 404 if resource not found instead
  of 503.</li><li>Fixed the <a shape="rect" class="external-link" href="https://camel.apache.org/mongodb.html">MongoDB</a>&#160;<code>readPreference</code>&#160;option which used to cause an <code>IllegalArgumentException</code>&#160;to be thrown.</li><li>Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused.</li><li>Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP&#160;</li><li>Improved stability when testing with&#160;<code>camel-test-blueprint</code> component.</li><li><a shape="rect" href="netty-http.html">Netty HTTP</a>&#160;now <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7506">removes</a> <code>headerFilterStrategy</code> option after resolving<span class="overlay-icon aui-icon aui-icon-small aui-iconfont-edit">&#160;</span>it</li><li>Fixed <a shape="rect" href="aggregator2.html">POJO aggregating</a> when the parameter ty
 pe was referring to a type that was class annotated.</li><li>Fixed&#160;<a shape="rect" href="mybatis.html">MyBatis</a>&#160;to keep the message body as-is when calling stored procedures, if the procedure returns data as OUT parameters.</li><li>Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle.</li><li>Fixed <a shape="rect" href="advicewith.html">Advice-With</a> to work with transacted routes defined in XML DSL</li><li>Fixed <a shape="rect" href="advicewith.html">Advice-With</a> to work with Content Based Router when adding outputs to the when clauses.</li><li>Improved&#160;<span><code>NettyWorkerPoolBuilder#build</code> <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7583">visibility</a>.</span></li></ul><h3 id="Camel2.14.0Release-New">New <a shape="rect" href="enterprise-integration-patterns.html">Enterprise Integration Patterns</a></h3><ul><li><a shape="rect" href="load-balancer.html">Circuit Breaker</a> pat
 tern implemented as a Load Balancer policy</li></ul><h3 id="Camel2.14.0Release-New.1">New <a shape="rect" href="components.html">Components</a></h3><ul><li>camel-ahc-ws</li><li>camel-atmosphere-websocket</li><li>camel-box</li><li><a shape="rect" href="openshift.html">camel-openshift</a></li><li><a shape="rect" href="gora.html">camel-gora</a></li><li><a shape="rect" href="spark-rest.html">camel-spar</a><a shape="rect" href="spark-rest.html">k-rest</a></li></ul><h3 id="Camel2.14.0Release-New.2">New <a shape="rect" href="camel-maven-archetypes.html">Camel Maven Archetypes</a></h3><h3 id="Camel2.14.0Release-NewDSL">New DSL</h3><h3 id="Camel2.14.0Release-NewAnnotations">New Annotations</h3><h3 id="Camel2.14.0Release-NewDataFormats">New <a shape="rect" href="data-format.html">Data Formats</a></h3><ul><li><a shape="rect" href="gora.html">camel-</a><a shape="rect" href="barcode-data-format.html">barcode</a></li></ul><h3 id="Camel2.14.0Release-New.3">New <a shape="rect" href="languages.html"
 >Languages</a></h3><ul><li>XMLTokenizer</li></ul><h3 id="Camel2.14.0Release-New.4">New <a shape="rect" href="examples.html">Examples</a></h3><h3 id="Camel2.14.0Release-New.5">New <a shape="rect" href="tutorials.html">Tutorials</a></h3><h3 id="Camel2.14.0Release-NewTooling">New Tooling</h3><h2 id="Camel2.14.0Release-APIchanges">API changes</h2><ul><li>Changed ...</li></ul><h2 id="Camel2.14.0Release-KnownIssues">Known Issues</h2><h2 id="Camel2.14.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>Atomikos 3.9.2 to 3.9.3</li><li>Commons-codec 1.8 to 1.9</li><li>CXF 2.7.11 to 3.0.0</li><li>Deltaspike 0.7 to 1.0.0</li><li>Dozer 5.4.0 to 5.5.1</li><li>EhCache 2.8.1 to 2.8.3</li><li>Groovy 2.2.2 to 2.3.3</li><li>Guava 16.0.1 to 17.0</li><li>JRuby 1.7.10 to 1.7.12</li><li>MongoDB-Java-Driver 2.11.4 to 2.12.0</li><li>RabbitMQ AMQ Client 3.2.2 to 3.3.0</li><li>RxJava 0.17.5 to 0.19.4</li><li>Scala 2.10.3 to 2.10.4</li><li>Snmp4j 2.2.5 to 2.3.0</li><li>SSHD 0.10.1 to 0.11.0</li><li>spring-redis 1.1.0 to 1.3.0</li></ul><h2 id="Camel2.14.0Release-Internalchanges">Internal changes</h2><ul><li>Changed ...</li></ul><h2 id="Camel2.14.0Release-Changesthatmayaffectendusers">Changes that may affect end users</h2><ul><li><a shape="rect" href="polling-consumer.html">Polling Consumer</a>&#160;allows to configure initial queue size and whether to block when full when using the default&#160;<code>EventDrivenPollingConsumer</code> which
  most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered.</li></ul><h2 id="Camel2.14.0Release-Importantchangestoconsiderwhenupgrading">Important changes to consider when upgrading</h2><ul><li>Java 1.6 no longer supported.<br clear="none"><br clear="none"></li></ul><h2 id="Camel2.14.0Release-GettingtheDistributions">Getting the Distributions</h2><h3 id="Camel2.14.0Release-BinaryDistributions">Binary Distributions</h3><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Windows Distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://
 www.apache.org/dyn/closer.cgi/camel/apache-camel/2.14.0/apache-camel-2.14.0.zip">apache-camel-2.14.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.14.0/apache-camel-2.14.0.zip.asc">apache-camel-2.14.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.14.0/apache-camel-2.14.0.tar.gz">apache-camel-2.14.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.14.0/apache-camel-2.14.0.tar.gz.asc">apache-camel-2.14.0.tar.gz.asc</a></p></td></tr></tbody></table></div><h3 id="Camel2.14.0Release-SourceDistribution">Source Distribution</h3><div class="ta
 ble-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Download Link</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Source</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.14.0/apache-camel-2.14.0-src.zip">apache-camel-2.14.0-src.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/camel/apache-camel/2.14.0/apache-camel-2.14.0-src.zip.asc">apache-camel-2.14.0-src.zip.asc</a></p></td></tr></tbody></table></div><h3 id="Camel2.14.0Release-GettingtheBinariesusingMaven2">Getting the Binaries using Maven 2</h3><p>To use this release in your maven project, the prop
 er dependency configuration that you should use in your <a shape="rect" class="external-link" href="http://maven.apache.org/guides/introduction/introduction-to-the-pom.html">Maven POM</a> is:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
   &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
   &lt;artifactId&gt;camel-core&lt;/artifactId&gt;

Added: websites/production/camel/content/dropbox.html
==============================================================================
--- websites/production/camel/content/dropbox.html (added)
+++ websites/production/camel/content/dropbox.html Tue Jul  8 08:18:06 2014
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html>
+<head>
+    <link href="//camel.apache.org/styles/site.css" rel="stylesheet" type="text/css">
+    <link href="//camel.apache.org/styles/type-settings.css" rel="stylesheet" type="text/css">
+    <script src="//camel.apache.org/styles/prototype.js" type="text/javascript"></script>
+    <script src="//camel.apache.org/styles/rico.js" type="text/javascript"></script>    
+    <script src="//camel.apache.org/styles/site.js" type="text/javascript"></script>
+
+    <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
+
+    <style type="text/css">
+      .maincontent { overflow:hidden; }
+    </style>
+    <!--[if IE]>
+    <style type="text/css">
+      .maincontent { width:100%; }
+    </style>
+    <![endif]-->
+
+
+  <link href='//camel.apache.org/styles/highlighter/styles/shCoreCamel.css' rel='stylesheet' type='text/css' />
+  <link href='//camel.apache.org/styles/highlighter/styles/shThemeCamel.css' rel='stylesheet' type='text/css' />
+  <script src='//camel.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script>
+  <script src='//camel.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
+  <script src='//camel.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
+  <script src='//camel.apache.org/styles/highlighter/scripts/shBrushPlain.js' type='text/javascript'></script>
+  
+  <script type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+
+    <title>
+    Apache Camel: Dropbox
+    </title>
+</head>
+<body>
+<div class="white_box">
+<div class="header">
+  <div class="header_l">
+    <div class="header_r">
+    </div>
+  </div>
+</div>
+<div class="content">
+  <div class="content_l">
+    <div class="content_r">
+      <div>
+          <!-- Banner -->
+<div id="banner-content"><div id="asf_logo">
+	<div id="activemq_logo" style="height:108px; background:transparent url(banner.data/apache-camel-7.png) no-repeat scroll left top;">
+            <a shape="rect" style="float:left; width:310px;display:block;text-indent:-5000px;text-decoration:none;line-height:140px; margin-top:20px; margin-left:18px;" href="http://camel.apache.org/">Camel</a>
+            <a shape="rect" style="float:right; width:180px;display:block;text-indent:-5000px;text-decoration:none;line-height:80px; margin-top:45px; margin-right:10px;" href="http://www.apache.org">Apache</a>
+	</div>
+</div></div>
+          <!-- Banner -->
+        <div class="top_red_bar">
+          <div id="site-breadcrumbs">
+                <!-- Breadcrumbs -->
+<a href="index.html">Apache Camel</a>&nbsp;&gt;&nbsp;<a href="documentation.html">Documentation</a>&nbsp;&gt;&nbsp;<a href="components.html">Components</a>&nbsp;&gt;&nbsp;<a href="dropbox.html">Dropbox</a>
+          </div>
+          <!-- Quicklinks -->
+<div id="site-quicklinks"><p><a shape="rect" href="download.html">Download</a> | <a shape="rect" href="javadoc.html">JavaDoc</a> | <a shape="rect" href="source.html">Source</a> | <a shape="rect" href="discussion-forums.html">Forums</a> | <a shape="rect" href="support.html">Support</a></p></div>
+          <!-- Quicklinks -->
+        </div>
+
+	<table border="0">
+	<tbody>
+        <tr>
+        <td valign="top" width="100%">
+<div class="wiki-content maincontent"><h2 id="Dropbox-CamelDropboxcomponent">Camel Dropbox component</h2><p><strong>Available as of Camel x.xx</strong></p><p>The <strong>dropbox:</strong> component allows you to treat <a shape="rect" class="external-link" href="https://www.dropbox.com" rel="nofollow">Dropbox</a>&#160;remote folders as a producer or consumer of messages. Using the <a shape="rect" class="external-link" href="http://dropbox.github.io/dropbox-sdk-java/api-docs/v1.7.x/" rel="nofollow">Dropbox Java Core API</a> (reference version for this component is 1.7.x), this camel component has the following features:</p><ul><li>As a consumer, monitors couch changesets for inserts, updates and deletes and publishes these as messages into camel routes.</li><li>As a producer, can save or update documents into couch.</li><li>Can support as many endpoints as required, eg for multiple databases across multiple instances.</li><li>Ability to have events trigger for only deletes, only inser
 ts/updates or all (default).</li><li>Headers set for sequenceId, document revision, document id, and HTTP method type.</li></ul><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
+    &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
+    &lt;artifactId&gt;camel-couchdb&lt;/artifactId&gt;
+    &lt;version&gt;x.x.x&lt;/version&gt;
+    &lt;!-- use the same version as your Camel core version --&gt;
+&lt;/dependency&gt;
+]]></script>
+</div></div><h3 id="Dropbox-URIformat">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[couchdb:http://hostname[:port]/database?[options]
+]]></script>
+</div></div><p>Where <strong>hostname</strong> is the hostname of the running couchdb instance. Port is optional and if not specified then defaults to 5984.</p><h3 id="Dropbox-Options">Options</h3><div class="confluenceTableSmall">
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Property </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Default </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>deletes</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> document deletes are published as events </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>updates</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> document inserts/updates are published as events </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>heartbeat</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>30000</code> </p></td><td col
 span="1" rowspan="1" class="confluenceTd"><p> how often to send an empty message to keep socket alive in millis </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>createDatabase</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> create the database if it does not already exist </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>username</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> username in case of authenticated databases </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>password</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> password for authenticated databases </p></td></tr></tbody></table>
+</div><h3 id="Dropbox-Headers">Headers</h3><p>The following headers are set on exchanges during message transport.</p><div class="confluenceTableSmall">
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Property </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Value </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CouchDbDatabase</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> the database the message came from </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CouchDbSeq</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> the couchdb changeset sequence number of the update / delete message </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CouchDbId</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> the couchdb document id </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CouchDbRev</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> the couchdb document revision </p></td></tr><tr><td colspan="1" r
 owspan="1" class="confluenceTd"><p> <code>CouchDbMethod</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> the method (delete / update) </p></td></tr></tbody></table>
+</div><p>Headers are set by the consumer once the message is received. The producer will also set the headers for downstream processors once the insert/update has taken place. Any headers set prior to the producer are ignored. That means for example, if you set CouchDbId as a header, it will not be used as the id for insertion, the id of the document will still be used.</p><h3 id="Dropbox-MessageBody">Message Body</h3><p>The component will use the message body as the document to be inserted. If the body is an instance of String, then it will be marshalled into a GSON object before insert. This means that the string must be valid JSON or the insert / update will fail. If the body is an instance of a com.google.gson.JsonElement then it will be inserted as is. Otherwise the producer will throw an exception of unsupported body type.</p><h3 id="Dropbox-Samples">Samples</h3><p>For example if you wish to consume all inserts, updates and deletes from a CouchDB instance running locally, on p
 ort 9999 then you could use the following:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;couchdb:http://localhost:9999&quot;).process(someProcessor);
+]]></script>
+</div></div><p>If you were only interested in deletes, then you could use the following</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;couchdb:http://localhost:9999?updates=false&quot;).process(someProcessor);
+]]></script>
+</div></div><p>If you wanted to insert a message as a document, then the body of the exchange is used</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;someProducingEndpoint&quot;).process(someProcessor).to(&quot;couchdb:http://localhost:9999&quot;)
+]]></script>
+</div></div></div>
+        </td>
+        <td valign="top">
+          <div class="navigation">
+            <div class="navigation_top">
+                <!-- NavigationBar -->
+<div class="navigation_bottom" id="navigation_bottom"><h3 id="Navigation-Overview"><a shape="rect" href="overview.html">Overview</a></h3><ul class="alternate"><li><a shape="rect" href="index.html">Home</a></li><li><a shape="rect" href="download.html">Download</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li><li><a shape="rect" href="faq.html">FAQ</a></li></ul><h3 id="Navigation-Documentation"><a shape="rect" href="documentation.html">Documentation</a></h3><ul class="alternate"><li><a shape="rect" href="user-guide.html">User Guide</a></li><li><a shape="rect" href="manual.html">Manual</a></li><li><a shape="rect" href="books.html">Books</a></li><li><a shape="rect" href="tutorials.html">Tutorials</a></li><li><a shape="rect" href="examples.html">Examples</a></li><li><a shape="rect" href="cookbook.html">Cookbook</a></li><li><a shape="rect" href="architecture.html">Architecture</a></li><li><a shape="rect" href="enterprise-integration-patterns.html">Enterprise
  Integration Patterns</a></li><li><a shape="rect" href="dsl.html">DSL</a></li><li><a shape="rect" href="components.html">Components</a></li><li><a shape="rect" href="data-format.html">Data Format</a></li><li><a shape="rect" href="languages.html">Languages</a></li><li><a shape="rect" href="security.html">Security</a></li><li><a shape="rect" href="security-advisories.html">Security Advisories</a></li></ul><h3 id="Navigation-Search">Search</h3><form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
+  <div>
+    <input type="hidden" name="cx" value="007878419884033443453:m5nhvy4hmyq">
+    <input type="hidden" name="ie" value="UTF-8">
+    <input type="text" name="q" size="21">
+    <input type="submit" name="sa" value="Search">
+  </div>
+</form>
+<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&amp;lang=en"></script><h3 id="Navigation-Community"><a shape="rect" href="community.html">Community</a></h3><ul class="alternate"><li><a shape="rect" href="support.html">Support</a></li><li><a shape="rect" href="contributing.html">Contributing</a></li><li><a shape="rect" href="discussion-forums.html">Discussion Forums</a></li><li><a shape="rect" href="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect" href="user-stories.html">User Stories</a></li><li><a shape="rect" href="news.html">News</a></li><li><a shape="rect" href="articles.html">Articles</a></li><li><a shape="rect" href="site.html">Site</a></li><li><a shape="rect" href="team.html">Team</a></li><li><a shape="rect" class="external-link" href="http://camel-extra.googlecode.com/" rel="nofollow">Camel Extra</a></li></ul><h3 id="Navigation-Developers"><a shape="rect" href="developers.html">Developers</a></h3><ul class="alternate"
 ><li><a shape="rect" href="developers.html">Developer Guide</a></li><li><a shape="rect" href="source.html">Source</a></li><li><a shape="rect" href="building.html">Building</a></li><li><a shape="rect" href="javadoc.html">JavaDoc</a></li><li><a shape="rect" href="irc-room.html">IRC Room</a></li></ul><h3 id="Navigation-ApacheSoftwareFoundation">Apache Software Foundation</h3><ul class="alternate"><li><a shape="rect" class="external-link" href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/security/">Security</a></li></ul></div>
+                <!-- NavigationBar -->
+            </div>
+          </div>
+        </td>
+        </tr>
+	</tbody>
+        </table>
+
+
+        <div class="bottom_red_bar"></div>
+      </div>
+    </div>
+  </div>
+</div>
+<div class="black_box">
+<div class="footer">
+  <div class="footer_l">
+    <div class="footer_r">
+      <div>
+        <a href="$base/privacy-policy.html">Privacy Policy</a> -
+        (<a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=42568976">edit page</a>)
+   	 (<a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=42568976&amp;showComments=true&amp;showCommentArea=true#addcomment">add comment</a>)
+      </div>
+    </div>
+  </div>
+</div>
+</div>
+</div>
+<div class="design_attribution">
+&copy; 2004-2014 The Apache Software Foundation.
+<br>          
+Apache Camel, Camel, Apache, the Apache feather logo, and the Apache Camel project logo are trademarks of The Apache Software Foundation.  All other marks mentioned may be trademarks or registered trademarks of their respective owners.
+<br>
+<a href="http://hiramchirino.com">Graphic Design By Hiram</a>
+</div>
+
+<!-- Camel committers that would like access to the Analytics, send a note to private@camel.apache.org -->
+<script type="text/javascript">
+
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', 'UA-25976253-1']);
+  _gaq.push(['_trackPageview']);
+
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+  })();
+
+</script>
+
+</body>
+</html>
+
+

Modified: websites/production/camel/content/freemarker.html
==============================================================================
--- websites/production/camel/content/freemarker.html (original)
+++ websites/production/camel/content/freemarker.html Tue Jul  8 08:18:06 2014
@@ -86,134 +86,65 @@
 	<tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="FreeMarker-FreeMarker">FreeMarker</h2>
-
-<p>The <strong>freemarker:</strong> component allows for processing a message using a <a shape="rect" class="external-link" href="http://freemarker.org/" rel="nofollow">FreeMarker</a> template. This can be ideal when using <a shape="rect" href="templating.html">Templating</a> to generate responses for requests.</p>
-
-<p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;dependency&gt;
+<div class="wiki-content maincontent"><h2 id="FreeMarker-FreeMarker">FreeMarker</h2><p>The <strong>freemarker:</strong> component allows for processing a message using a <a shape="rect" class="external-link" href="http://freemarker.org/" rel="nofollow">FreeMarker</a> template. This can be ideal when using <a shape="rect" href="templating.html">Templating</a> to generate responses for requests.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-freemarker&lt;/artifactId&gt;
     &lt;version&gt;x.x.x&lt;/version&gt; &lt;!-- use the same version as your Camel core version --&gt;
 &lt;/dependency&gt;
 ]]></script>
-</div></div>
-
-<h3 id="FreeMarker-URIformat">URI format</h3>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-freemarker:templateName[?options]
+</div></div><h3 id="FreeMarker-URIformat">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[freemarker:templateName[?options]
 ]]></script>
-</div></div>
-
-<p>Where <strong>templateName</strong> is the classpath-local URI of the template to invoke; or the complete URL of the remote template (eg: <a shape="rect" class="external-link" href="file://folder/myfile.ftl" rel="nofollow">file://folder/myfile.ftl</a>).</p>
-
-<p>You can append query options to the URI in the following format, <code>?option=value&amp;option=value&amp;...</code></p>
-
-<h3 id="FreeMarker-Options">Options</h3>
-<div class="confluenceTableSmall">
+</div></div><p>Where <strong>templateName</strong> is the classpath-local URI of the template to invoke; or the complete URL of the remote template (eg: <a shape="rect" class="external-link" href="file://folder/myfile.ftl" rel="nofollow">file://folder/myfile.ftl</a>).</p><p>You can append query options to the URI in the following format, <code>?option=value&amp;option=value&amp;...</code></p><h3 id="FreeMarker-Options">Options</h3><div class="confluenceTableSmall">
 <table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Option </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Default </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>contentCache</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Cache for the resource content when it's loaded. <br clear="none" class="atl-forced-newline"> Note: as of <strong>Camel 2.9</strong> cached resource content can be cleared via JMX using the endpoint's <code>clearContentCache</code> operation. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>encoding</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Character encoding of the resource
  content. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>templateUpdateDelay</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>5</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.9:</strong> Number of seconds the loaded template resource will remain in the cache. </p></td></tr></tbody></table>
-</div>
-
-<h3 id="FreeMarker-Headers">Headers</h3>
-
-<p>Headers set during the FreeMarker evaluation are returned to the message and added as headers. This provides a mechanism for the FreeMarker component to return values to the Message.</p>
-
-<p>An example: Set the header value of <code>fruit</code> in the FreeMarker template:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-${request.setHeader(&#39;fruit&#39;, &#39;Apple&#39;)}
+</div><h3 id="FreeMarker-Headers">Headers</h3><p>Headers set during the FreeMarker evaluation are returned to the message and added as headers. This provides a mechanism for the FreeMarker component to return values to the Message.</p><p>An example: Set the header value of <code>fruit</code> in the FreeMarker template:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[${request.setHeader(&#39;fruit&#39;, &#39;Apple&#39;)}
 ]]></script>
-</div></div>
-
-<p>The header, <code>fruit</code>, is now accessible from the <code>message.out.headers</code>.</p>
-
-<h3 id="FreeMarker-FreeMarkerContext">FreeMarker Context</h3>
-<p>Camel will provide exchange information in the FreeMarker context (just a <code>Map</code>). The <code>Exchange</code> is transferred as:</p>
-<div class="confluenceTableSmall">
+</div></div><p>The header, <code>fruit</code>, is now accessible from the <code>message.out.headers</code>.</p><h3 id="FreeMarker-FreeMarkerContext">FreeMarker Context</h3><p>Camel will provide exchange information in the FreeMarker context (just a <code>Map</code>). The <code>Exchange</code> is transferred as:</p><div class="confluenceTableSmall">
 <table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> key </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> value </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>exchange</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The <code>Exchange</code> itself. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>exchange.properties</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The <code>Exchange</code> properties. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>headers</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The headers of the In message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>camelContext</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Camel Context. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <co
 de>request</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The In message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>body</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The In message body. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>response</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Out message (only for InOut message exchange pattern). </p></td></tr></tbody></table>
-</div>
-
-<h3 id="FreeMarker-Hotreloading">Hot reloading</h3>
-<p>The FreeMarker template resource is by default <strong>not</strong> hot reloadable for both file and classpath resources (expanded jar). If you set <code>contentCache=false</code>, then Camel will not cache the resource and hot reloading is thus enabled. This scenario can be used in development.</p>
-
-<h3 id="FreeMarker-Dynamictemplates">Dynamic templates</h3>
-
-<p>Camel provides two headers by which you can define a different resource location for a template or the template content itself. If any of these headers is set then Camel uses this over the endpoint configured resource. This allows you to provide a dynamic template at runtime.</p>
-<div class="confluenceTableSmall">
+</div><p>From Camel 2.14, you can setup your custom FreeMarker context in the message header with the key "<strong>CamelFreemarkerDataModel</strong>" just like this</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Map&lt;String, Object&gt; variableMap = new HashMap&lt;String, Object&gt;();
+variableMap.put(&quot;headers&quot;, headersMap);
+variableMap.put(&quot;body&quot;, &quot;Monday&quot;);
+variableMap.put(&quot;exchange&quot;, exchange);
+exchange.getIn().setHeader(&quot;CamelFreemarkerDataModel&quot;, variableMap);
+]]></script>
+</div></div><h3 id="FreeMarker-Hotreloading">Hot reloading</h3><p>The FreeMarker template resource is by default <strong>not</strong> hot reloadable for both file and classpath resources (expanded jar). If you set <code>contentCache=false</code>, then Camel will not cache the resource and hot reloading is thus enabled. This scenario can be used in development.</p><h3 id="FreeMarker-Dynamictemplates">Dynamic templates</h3><p>Camel provides two headers by which you can define a different resource location for a template or the template content itself. If any of these headers is set then Camel uses this over the endpoint configured resource. This allows you to provide a dynamic template at runtime.</p><div class="confluenceTableSmall">
 <table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Type </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Support Version </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> FreemarkerConstants.FREEMARKER_RESOURCE </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> org.springframework.core.io.Resource </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The template resource </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> &lt;= 2.1 </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> FreemarkerConstants.FREEMARKER_RESOURCE_URI </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> String </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> A URI for the template resource to use instead of the endpoint c
 onfigured. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> &gt;= 2.1 </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> FreemarkerConstants.FREEMARKER_TEMPLATE </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> String </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The template to use instead of the endpoint configured. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> &gt;= 2.1 </p></td></tr></tbody></table>
-</div>
-
-<h3 id="FreeMarker-Samples">Samples</h3>
-
-<p>For example you could use something like:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;activemq:My.Queue&quot;).
+</div><h3 id="FreeMarker-Samples">Samples</h3><p>For example you could use something like:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;activemq:My.Queue&quot;).
   to(&quot;freemarker:com/acme/MyResponse.ftl&quot;);
 ]]></script>
-</div></div>
-
-<p>To use a FreeMarker template to formulate a response for a message for InOut message exchanges (where there is a <code>JMSReplyTo</code> header).</p>
-
-<p>If you want to use InOnly and consume the message and send it to another destination you could use:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;activemq:My.Queue&quot;).
+</div></div><p>To use a FreeMarker template to formulate a response for a message for InOut message exchanges (where there is a <code>JMSReplyTo</code> header).</p><p>If you want to use InOnly and consume the message and send it to another destination you could use:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;activemq:My.Queue&quot;).
   to(&quot;freemarker:com/acme/MyResponse.ftl&quot;).
   to(&quot;activemq:Another.Queue&quot;);
 ]]></script>
-</div></div>
-
-<p>And to disable the content cache, e.g. for development usage where the <code>.ftl</code> template should be hot reloaded:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;activemq:My.Queue&quot;).
+</div></div><p>And to disable the content cache, e.g. for development usage where the <code>.ftl</code> template should be hot reloaded:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;activemq:My.Queue&quot;).
   to(&quot;freemarker:com/acme/MyResponse.ftl?contentCache=false&quot;).
   to(&quot;activemq:Another.Queue&quot;);
 ]]></script>
-</div></div>
-
-<p>And a file-based resource:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;activemq:My.Queue&quot;).
+</div></div><p>And a file-based resource:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;activemq:My.Queue&quot;).
   to(&quot;freemarker:file://myfolder/MyResponse.ftl?contentCache=false&quot;).
   to(&quot;activemq:Another.Queue&quot;);
 ]]></script>
-</div></div>
-
-<p>In <strong>Camel 2.1</strong> it's possible to specify what template the component should use dynamically via a header, so for example:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;direct:in&quot;).
+</div></div><p>In <strong>Camel 2.1</strong> it's possible to specify what template the component should use dynamically via a header, so for example:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;direct:in&quot;).
   setHeader(FreemarkerConstants.FREEMARKER_RESOURCE_URI).constant(&quot;path/to/my/template.ftl&quot;).
   to(&quot;freemarker:dummy&quot;);
 ]]></script>
-</div></div>
-
-<h3 id="FreeMarker-TheEmailSample">The Email Sample</h3>
-<p>In this sample we want to use FreeMarker templating for an order confirmation email. The email template is laid out in FreeMarker as:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-Dear ${headers.lastName}, ${headers.firstName}
+</div></div><h3 id="FreeMarker-TheEmailSample">The Email Sample</h3><p>In this sample we want to use FreeMarker templating for an order confirmation email. The email template is laid out in FreeMarker as:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Dear ${headers.lastName}, ${headers.firstName}
 
 Thanks for the order of ${headers.item}.
 
 Regards Camel Riders Bookstore
 ${body}
 ]]></script>
-</div></div>
-
-<p>And the java code:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>And the java code:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 private Exchange createLetter() {
     Exchange exchange = context.getEndpoint(&quot;direct:a&quot;).createExchange();
@@ -249,9 +180,7 @@ protected RouteBuilder createRouteBuilde
     };
 }
 ]]></script>
-</div></div>
-
-<h3 id="FreeMarker-SeeAlso">See Also</h3>
+</div></div><p></p><h3 id="FreeMarker-SeeAlso">See Also</h3>
 <ul><li><a shape="rect" href="configuring-camel.html">Configuring Camel</a></li><li><a shape="rect" href="component.html">Component</a></li><li><a shape="rect" href="endpoint.html">Endpoint</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li></ul></div>
         </td>
         <td valign="top">

Modified: websites/production/camel/content/stringtemplate.html
==============================================================================
--- websites/production/camel/content/stringtemplate.html (original)
+++ websites/production/camel/content/stringtemplate.html Tue Jul  8 08:18:06 2014
@@ -86,79 +86,44 @@
 	<tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="StringTemplate-StringTemplate">String Template</h2>
-
-<p>The <strong>string-template:</strong> component allows you to process a message using a <a shape="rect" class="external-link" href="http://www.stringtemplate.org/" rel="nofollow">String Template</a>. This can be ideal when using <a shape="rect" href="templating.html">Templating</a> to generate responses for requests.</p>
-
-<p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;dependency&gt;
+<div class="wiki-content maincontent"><h2 id="StringTemplate-StringTemplate">String Template</h2><p>The <strong>string-template:</strong> component allows you to process a message using a <a shape="rect" class="external-link" href="http://www.stringtemplate.org/" rel="nofollow">String Template</a>. This can be ideal when using <a shape="rect" href="templating.html">Templating</a> to generate responses for requests.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-stringtemplate&lt;/artifactId&gt;
     &lt;version&gt;x.x.x&lt;/version&gt;
     &lt;!-- use the same version as your Camel core version --&gt;
 &lt;/dependency&gt;
 ]]></script>
-</div></div>
-
-<h3 id="StringTemplate-URIformat">URI format</h3>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-string-template:templateName[?options]
+</div></div><h3 id="StringTemplate-URIformat">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[string-template:templateName[?options]
 ]]></script>
-</div></div>
-
-<p>Where <strong>templateName</strong> is the classpath-local URI of the template to invoke; or the complete URL of the remote template.</p>
-
-<p>You can append query options to the URI in the following format, <code>?option=value&amp;option=value&amp;...</code></p>
-
-<h3 id="StringTemplate-Options">Options</h3>
-<div class="confluenceTableSmall">
+</div></div><p>Where <strong>templateName</strong> is the classpath-local URI of the template to invoke; or the complete URL of the remote template.</p><p>You can append query options to the URI in the following format, <code>?option=value&amp;option=value&amp;...</code></p><h3 id="StringTemplate-Options">Options</h3><div class="confluenceTableSmall">
 <table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Option </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Default </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>contentCache</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Cache for the resource content when its loaded. <br clear="none" class="atl-forced-newline"> Note : as of <strong>Camel 2.9</strong> cached resource content can be cleared via JMX using the endpoint's <code>clearContentCache</code> operation. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>delimiterStart</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Since Camel 2.11.1<
 /strong>, configuring the variable start delimiter </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>delimiterStop</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Since Camel 2.11.1</strong>, configuring the variable end delimiter </p></td></tr></tbody></table>
-</div>
-
-<h3 id="StringTemplate-Headers">Headers</h3>
-<p>Camel will store a reference to the resource in the message header with key, <code>org.apache.camel.stringtemplate.resource</code>. The Resource is an <code>org.springframework.core.io.Resource</code> object.</p>
-
-<h3 id="StringTemplate-Hotreloading">Hot reloading</h3>
-<p>The string template resource is by default hot-reloadable for both file and classpath resources (expanded jar). If you set <code>contentCache=true</code>, Camel loads the resource only once and hot-reloading is not possible. This scenario can be used in production when the resource never changes.</p>
-
-<h3 id="StringTemplate-StringTemplateAttributes">StringTemplate Attributes</h3>
-<p>Camel will provide exchange information as attributes (just a <code>java.util.Map</code>) to the string template. The Exchange is transfered as:</p>
-<div class="confluenceTableSmall">
+</div><h3 id="StringTemplate-Headers">Headers</h3><p>Camel will store a reference to the resource in the message header with key, <code>org.apache.camel.stringtemplate.resource</code>. The Resource is an <code>org.springframework.core.io.Resource</code> object.</p><h3 id="StringTemplate-Hotreloading">Hot reloading</h3><p>The string template resource is by default hot-reloadable for both file and classpath resources (expanded jar). If you set <code>contentCache=true</code>, Camel loads the resource only once and hot-reloading is not possible. This scenario can be used in production when the resource never changes.</p><h3 id="StringTemplate-StringTemplateAttributes">StringTemplate Attributes</h3><p>Camel will provide exchange information as attributes (just a <code>java.util.Map</code>) to the string template. The Exchange is transfered as:</p><div class="confluenceTableSmall">
 <table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> key </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> value </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>exchange</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Exchange itself. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>headers</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The headers of the In message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>camelContext</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Camel Context. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>request</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The In message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>in</code> </p></td><td colspan="1" rowspan="
 1" class="confluenceTd"><p> The In message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>body</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The In message body. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>out</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Out message (only for InOut message exchange pattern). </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>response</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Out message (only for InOut message exchange pattern). </p></td></tr></tbody></table>
-</div>
-
-<h3 id="StringTemplate-Samples">Samples</h3>
+</div><p>Since Camel 2.14, you can define the custom context map by setting the message header "<strong><span style="line-height: 1.4285715;">CamelStringTemplateVariableMap</span></strong><span style="line-height: 1.4285715;">" just like the below code.</span></p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Map&lt;String, Object&gt; variableMap = new HashMap&lt;String, Object&gt;();
+Map&lt;String, Object&gt; headersMap = new HashMap&lt;String, Object&gt;();
+headersMap.put(&quot;name&quot;, &quot;Willem&quot;);
+variableMap.put(&quot;headers&quot;, headersMap);
+variableMap.put(&quot;body&quot;, &quot;Monday&quot;);
+variableMap.put(&quot;exchange&quot;, exchange);
+exchange.getIn().setHeader(&quot;CamelStringTemplateVariableMap&quot;, variableMap);
 
-<p>For example you could use a string template as follows in order to formulate a response to a message:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;activemq:My.Queue&quot;).
+]]></script>
+</div></div><h3 id="StringTemplate-Samples">Samples</h3><p>For example you could use a string template as follows in order to formulate a response to a message:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;activemq:My.Queue&quot;).
   to(&quot;string-template:com/acme/MyResponse.tm&quot;);
 ]]></script>
-</div></div>
-
-<h3 id="StringTemplate-TheEmailSample">The Email Sample</h3>
-<p>In this sample we want to use a string template to send an order confirmation email. The email template is laid out in <code>StringTemplate</code> as:<br clear="none">
-This example works for <strong>camel 2.11.0</strong>. If your camel version is less than 2.11.0, the variables should be started and ended with $.</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-Dear &lt;headers.lastName&gt;, &lt;headers.firstName&gt;
+</div></div><h3 id="StringTemplate-TheEmailSample">The Email Sample</h3><p>In this sample we want to use a string template to send an order confirmation email. The email template is laid out in <code>StringTemplate</code> as:<br clear="none"> This example works for <strong>camel 2.11.0</strong>. If your camel version is less than 2.11.0, the variables should be started and ended with $.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Dear &lt;headers.lastName&gt;, &lt;headers.firstName&gt;
 
 Thanks for the order of &lt;headers.item&gt;.
 
 Regards Camel Riders Bookstore
 &lt;body&gt;
 ]]></script>
-</div></div>
-
-<p>And the java code is as follows:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>And the java code is as follows:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 private Exchange createLetter() {
     Exchange exchange = context.getEndpoint(&quot;direct:a&quot;).createExchange();
@@ -189,9 +154,7 @@ protected RouteBuilder createRouteBuilde
     };
 }
 ]]></script>
-</div></div>
-
-<h3 id="StringTemplate-SeeAlso">See Also</h3>
+</div></div><p></p><h3 id="StringTemplate-SeeAlso">See Also</h3>
 <ul><li><a shape="rect" href="configuring-camel.html">Configuring Camel</a></li><li><a shape="rect" href="component.html">Component</a></li><li><a shape="rect" href="endpoint.html">Endpoint</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li></ul></div>
         </td>
         <td valign="top">