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 2016/12/21 22:21:14 UTC

svn commit: r1003257 - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache pipes-and-filters.html

Author: buildbot
Date: Wed Dec 21 22:21:14 2016
New Revision: 1003257

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/book-pattern-appendix.html
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/pipes-and-filters.html

Modified: websites/production/camel/content/book-in-one-page.html
==============================================================================
--- websites/production/camel/content/book-in-one-page.html (original)
+++ websites/production/camel/content/book-in-one-page.html Wed Dec 21 22:21:14 2016
@@ -3966,11 +3966,11 @@ The tutorial has been designed in two pa
 While not actual tutorials you might find working through the source of the various <a shape="rect" href="examples.html">Examples</a> useful.</li></ul>
 
 <h2 id="BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</h2><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Thanks</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This tutorial was kindly donated to Apache Camel by Martin Gilday.</p></div></div><h2 id="BookInOnePage-Preface">Preface</h2><p>This tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a <a shape="rect" class="external-link" href="http://www.springramework.org" rel="nofollow">Spring</a> service. The route works in a synchronous fashion returning a response to the client.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1481883518542 {padding: 0px;}
-div.rbtoc1481883518542 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1481883518542 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1482358760237 {padding: 0px;}
+div.rbtoc1482358760237 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1482358760237 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1481883518542">
+/*]]>*/</style></p><div class="toc-macro rbtoc1482358760237">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#BookInOnePage-Preface">Preface</a></li><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-About">About</a></li><li><a shape="rect" href="#BookInOnePage-CreatetheCamelProject">Create the Camel Project</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul>
 </li><li><a shape="rect" href="#BookInOnePage-WritingtheServer">Writing the Server</a>
@@ -6085,11 +6085,11 @@ So we completed the last piece in the pi
 <p>This example has been removed from <strong>Camel 2.9</strong> onwards. Apache Axis 1.4 is a very old and unsupported framework. We encourage users to use <a shape="rect" href="cxf.html">CXF</a> instead of Axis.</p></div></div>
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1481883519297 {padding: 0px;}
-div.rbtoc1481883519297 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1481883519297 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1482358760516 {padding: 0px;}
+div.rbtoc1482358760516 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1482358760516 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1481883519297">
+/*]]>*/</style><div class="toc-macro rbtoc1482358760516">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-Introduction">Introduction</a></li><li><a shape="rect" href="#BookInOnePage-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Maven2">Maven 2</a></li><li><a shape="rect" href="#BookInOnePage-wsdl">wsdl</a></li><li><a shape="rect" href="#BookInOnePage-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#BookInOnePage-RunningtheExample">Running the Example</a></li></ul>
@@ -11758,23 +11758,24 @@ from(&quot;direct:start&quot;)
  <div class="codeContent panelContent pdl"> 
   <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;direct:startInOnly&amp;quot;/&amp;gt; &amp;lt;inOnly uri=&amp;quot;bean:process&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;direct:startInOut&amp;quot;/&amp;gt; &amp;lt;inOut uri=&amp;quot;bean:process&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><h4 id="BookInOnePage-UsingThisPattern.1">Using This Pattern</h4><p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookInOnePage-PipesandFilters">Pipes and Filters</h3><p>Camel supports the <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/PipesAndFilters.html" rel="nofollow">Pipes and Filters</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> in various ways.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource
 " src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif"></span></p><p>With Camel you can split your processing across multiple independent <a shape="rect" href="endpoint.html">Endpoint</a> instances which can then be chained together.</p><h4 id="BookInOnePage-UsingRoutingLogic">Using Routing Logic</h4><p>You can create pipelines of logic using multiple <a shape="rect" href="endpoint.html">Endpoint</a> or <a shape="rect" href="message-translator.html">Message Translator</a> instances as follows</p><div class="code panel pdl" style="border-width: 1px;">
- <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> from(&amp;quot;direct:a&amp;quot;).pipeline(&amp;quot;direct:x&amp;quot;, &amp;quot;direct:y&amp;quot;, &amp;quot;direct:z&amp;quot;, &amp;quot;mock:result&amp;quot;); </script> 
- </div>
-</div><p>Though pipeline is the default mode of operation when you specify multiple outputs in Camel. The opposite to pipeline is multicast; which fires the same message into each of its outputs. (See the example below).</p><p>In Spring XML you can use the &lt;pipeline/&gt; element</p><div class="code panel pdl" style="border-width: 1px;">
+</div><h4 id="BookInOnePage-UsingThisPattern.1">Using This Pattern</h4><p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookInOnePage-PipesandFilters">Pipes and Filters</h3><p>Camel supports the <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/PipesAndFilters.html" rel="nofollow">Pipes and Filters</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> in various ways.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource
 " src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif"></span></p><p>With Camel you can split your processing across multiple independent <a shape="rect" href="endpoint.html">Endpoint</a> instances which can then be chained together.</p><h4 id="BookInOnePage-UsingRoutingLogic">Using Routing Logic</h4><p>You can create pipelines of logic using multiple <a shape="rect" href="endpoint.html">Endpoint</a> or <a shape="rect" href="message-translator.html">Message Translator</a> instances as follows
+ </p><div class="code panel pdl" style="border-width: 1px;">
+  <div class="codeContent panelContent pdl"> 
+   <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> from(&amp;quot;direct:a&amp;quot;).pipeline(&amp;quot;direct:x&amp;quot;, &amp;quot;direct:y&amp;quot;, &amp;quot;direct:z&amp;quot;, &amp;quot;mock:result&amp;quot;); </script> 
+  </div>
+ </div>Though pipeline is the default mode of operation when you specify multiple outputs in Camel. The opposite to pipeline is multicast; which fires the same message into each of its outputs. (See the example below).<p>In Spring XML you can use the&#160;<strong><code>&lt;pipeline/&gt;</code></strong> element</p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/route&amp;gt; </script> 
+  <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter">&amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><p>In the above the pipeline element is actually unnecessary, you could use this...</p><div class="code panel pdl" style="border-width: 1px;">
+</div><p>In the above the pipeline element is actually unnecessary, you could use this:</p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; </script> 
+  <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter">&amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><p>Its just a bit more explicit. However if you wish to use &lt;multicast/&gt; to avoid a pipeline - to send the same message into multiple pipelines - then the &lt;pipeline/&gt; element comes into its own.</p><div class="code panel pdl" style="border-width: 1px;">
+</div><p>which is a bit more explicit.</p><p>However if you wish to use&#160;<strong><code>&lt;multicast/&gt;</code></strong> to avoid a pipeline - to send the same message into multiple pipelines - then the&#160;<strong><code>&lt;pipeline/&gt;</code></strong> element comes into its own:</p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;multicast&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;something&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;log:Something&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/multicast&amp;gt; &amp;lt;/route&amp;gt; </script> 
+  <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter">&amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;multicast&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;something&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;log:Something&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/multicast&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><p>In the above example we are routing from a single <a shape="rect" href="endpoint.html">Endpoint</a> to a list of different endpoints specified using <a shape="rect" href="uris.html">URIs</a>. If you find the above a bit confusing, try reading about the <a shape="rect" href="architecture.html">Architecture</a> or try the <a shape="rect" href="examples.html">Examples</a></p><h4 id="BookInOnePage-UsingThisPattern.2">Using This Pattern</h4><p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookInOnePage-MessageRouter">Message Router</h3><p>The <a shape="re
 ct" class="external-link" href="http://www.enterpriseintegrationpatterns.com/MessageRouter.html" rel="nofollow">Message Router</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> allows you to consume from an input destination, evaluate some predicate then choose the right output destination.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif"></span></p><p>The following example shows how to route a request from an input <strong>queue:a</strong> endpoint to either <strong>queue:b</strong>, <strong>queue:c</strong> or <strong>queue:d</strong> depending on the evaluation of various <a shape="rect" href="predicate.html">Predicate</a> expressions</p><p><strong>Using the <a shape="rect" href="fluent-builders.html">Fluent Builder
 s</a></strong></p><div class="code panel pdl" style="border-width: 1px;">
+</div><p>In the above example we are routing from a single <a shape="rect" href="endpoint.html">Endpoint</a> to a list of different endpoints specified using <a shape="rect" href="uris.html">URIs</a>. If you find the above a bit confusing, try reading about the <a shape="rect" href="architecture.html">Architecture</a> or try the <a shape="rect" href="examples.html">Examples</a></p><p></p><h4 id="BookInOnePage-UsingThisPattern.2">Using This Pattern</h4> <p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookInOnePage-MessageRouter">Message Router</h3><p>The <a s
 hape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/MessageRouter.html" rel="nofollow">Message Router</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> allows you to consume from an input destination, evaluate some predicate then choose the right output destination.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif"></span></p><p>The following example shows how to route a request from an input <strong>queue:a</strong> endpoint to either <strong>queue:b</strong>, <strong>queue:c</strong> or <strong>queue:d</strong> depending on the evaluation of various <a shape="rect" href="predicate.html">Predicate</a> expressions</p><p><strong>Using the <a shape="rect" href="fluent-builders.html">Fluent
  Builders</a></strong></p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
   <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> RouteBuilder builder = new RouteBuilder() { public void configure() { errorHandler(deadLetterChannel(&amp;quot;mock:error&amp;quot;)); from(&amp;quot;direct:a&amp;quot;) .choice() .when(header(&amp;quot;foo&amp;quot;).isEqualTo(&amp;quot;bar&amp;quot;)) .to(&amp;quot;direct:b&amp;quot;) .when(header(&amp;quot;foo&amp;quot;).isEqualTo(&amp;quot;cheese&amp;quot;)) .to(&amp;quot;direct:c&amp;quot;) .otherwise() .to(&amp;quot;direct:d&amp;quot;); } }; </script> 
  </div>
@@ -14269,8 +14270,8 @@ cometds://localhost:8443/service/mychann
  <div class="confluence-information-macro-body">
   <p>When using CXF in streaming modes (see DataFormat option), then also read about <a shape="rect" href="stream-caching.html">Stream caching</a>.</p>
  </div>
-</div><p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/**/ div.rbtoc1481883558580 {padding: 0px;} div.rbtoc1481883558580 ul {list-style: disc;margin-left: 0px;} div.rbtoc1481883558580 li {margin-left: 0px;padding-left: 0px;} /**/</style>
- </p><div class="toc-macro rbtoc1481883558580"> 
+</div><p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/**/ div.rbtoc1482358769821 {padding: 0px;} div.rbtoc1482358769821 ul {list-style: disc;margin-left: 0px;} div.rbtoc1482358769821 li {margin-left: 0px;padding-left: 0px;} /**/</style>
+ </p><div class="toc-macro rbtoc1482358769821"> 
   <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-CXFComponent">CXF Component</a> 
     <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-URIformat">URI format</a></li><li><a shape="rect" href="#BookInOnePage-Options">Options</a> 
       <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Thedescriptionsofthedataformats">The descriptions of the dataformats</a> 
@@ -14516,7 +14517,7 @@ cometds://localhost:8443/service/mychann
 </div><p>You can also configure the CXF REST endpoint through the spring configuration. Since there are lots of difference between the CXF REST client and CXF REST Server, we provide different configuration for them.<br clear="none"> Please check out the <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/camel/trunk/components/camel-cxf/src/main/resources/schema/cxfEndpoint.xsd">schema file</a> and <a shape="rect" class="external-link" href="https://cwiki.apache.org/CXF20DOC/JAX-RS">CXF JAX-RS documentation</a> for more information.</p><h3 id="BookInOnePage-HowtoconfiguretheRESTendpointinCamel">How to configure the REST endpoint in Camel</h3><p>In <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/camel/trunk/components/camel-cxf/src/main/resources/schema/cxfEndpoint.xsd">camel-cxf schema file</a>, there are two elements for the REST endpoint definition. <strong>cxf:rsServer</strong> for REST consumer, <strong>cxf:rsClient</strong> f
 or REST producer.<br clear="none"> You can find a Camel REST service route configuration example here.
  </p><div class="code panel pdl" style="border-width: 1px;">
   <div class="codeContent panelContent pdl"> 
-   <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;beans xmlns=&amp;quot;http://www.springframework.org/schema/beans&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:cxf=&amp;quot;http://camel.apache.org/schema/cxf&amp;quot; xmlns:jaxrs=&amp;quot;http://cxf.apache.org/jaxrs&amp;quot; xsi:schemaLocation=&amp;quot; http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd &amp;quot;&amp;gt; &amp;lt;bean class=&amp;quot;org.springframework.beans.factory.config.PropertyPlaceholderConfigurer&amp;quot;/&amp;gt; &amp;lt;!-- Defined the real JAXRS back end service --&amp;gt; &amp;lt;jaxrs:server id=&amp;quot;restService&am
 p;quot; address=&amp;quot;http://localhost:${CXFTestSupport.port2}/CxfRsRouterTest/rest&amp;quot; staticSubresourceResolution=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;jaxrs:serviceBeans&amp;gt; &amp;lt;ref bean=&amp;quot;customerService&amp;quot;/&amp;gt; &amp;lt;/jaxrs:serviceBeans&amp;gt; &amp;lt;/jaxrs:server&amp;gt; &amp;lt;bean id=&amp;quot;jsonProvider&amp;quot; class=&amp;quot;org.apache.cxf.jaxrs.provider.json.JSONProvider&amp;quot;/&amp;gt; &amp;lt;bean id=&amp;quot;customerService&amp;quot; class=&amp;quot;org.apache.camel.component.cxf.jaxrs.testbean.CustomerService&amp;quot; /&amp;gt; &amp;lt;!-- Defined the server endpoint to create the cxf-rs consumer --&amp;gt; &amp;lt;cxf:rsServer id=&amp;quot;rsServer&amp;quot; address=&amp;quot;http://localhost:${CXFTestSupport.port1}/CxfRsRouterTest/route&amp;quot; serviceClass=&amp;quot;org.apache.camel.component.cxf.jaxrs.testbean.CustomerService&amp;quot; loggingFeatureEnabled=&amp;quot;true&amp;quot; loggingSizeLimit=&amp;quot
 ;20&amp;quot; skipFaultLogging=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;cxf:providers&amp;gt; &amp;lt;ref bean=&amp;quot;jsonProvider&amp;quot;/&amp;gt; &amp;lt;/cxf:providers&amp;gt; &amp;lt;/cxf:rsServer&amp;gt; &amp;lt;!-- Defined the client endpoint to create the cxf-rs producer --&amp;gt; &amp;lt;cxf:rsClient id=&amp;quot;rsClient&amp;quot; address=&amp;quot;http://localhost:${CXFTestSupport.port2}/CxfRsRouterTest/rest&amp;quot; serviceClass=&amp;quot;org.apache.camel.component.cxf.jaxrs.testbean.CustomerService&amp;quot; loggingFeatureEnabled=&amp;quot;true&amp;quot; skipFaultLogging=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;cxf:providers&amp;gt; &amp;lt;ref bean=&amp;quot;jsonProvider&amp;quot;/&amp;gt; &amp;lt;/cxf:providers&amp;gt; &amp;lt;/cxf:rsClient&amp;gt; &amp;lt;!-- The camel route context --&amp;gt; &amp;lt;camelContext id=&amp;quot;camel&amp;quot; xmlns=&amp;quot;http://camel.apache.org/schema/spring&amp;quot;&amp;gt; &amp;lt;route&amp;gt; &amp;lt;!-- Just need to i
 gnoreDeleteMethodMessageBody --&amp;gt; &amp;lt;from uri=&amp;quot;cxfrs://bean://rsServer&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;log:body?level=INFO&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;cxfrs://bean://rsClient?ignoreDeleteMethodMessageBody=true&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; &amp;lt;/camelContext&amp;gt; &amp;lt;/beans&amp;gt; </script> 
+   <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;beans xmlns=&amp;quot;http://www.springframework.org/schema/beans&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:cxf=&amp;quot;http://camel.apache.org/schema/cxf&amp;quot; xmlns:jaxrs=&amp;quot;http://cxf.apache.org/jaxrs&amp;quot; xsi:schemaLocation=&amp;quot; http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd &amp;quot;&amp;gt; &amp;lt;bean class=&amp;quot;org.springframework.beans.factory.config.PropertyPlaceholderConfigurer&amp;quot;/&amp;gt; &amp;lt;!-- Defined the real JAXRS back end service --&amp;gt; &amp;lt;jaxrs:server id=&amp;quot;restService&am
 p;quot; address=&amp;quot;http://localhost:${CXFTestSupport.port2}/CxfRsRouterTest/rest&amp;quot; staticSubresourceResolution=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;jaxrs:serviceBeans&amp;gt; &amp;lt;ref bean=&amp;quot;customerService&amp;quot;/&amp;gt; &amp;lt;/jaxrs:serviceBeans&amp;gt; &amp;lt;/jaxrs:server&amp;gt; &amp;lt;bean id=&amp;quot;jsonProvider&amp;quot; class=&amp;quot;org.apache.cxf.jaxrs.provider.json.JSONProvider&amp;quot;/&amp;gt; &amp;lt;bean id=&amp;quot;customerService&amp;quot; class=&amp;quot;org.apache.camel.component.cxf.jaxrs.testbean.CustomerService&amp;quot; /&amp;gt; &amp;lt;!-- Defined the server endpoint to create the cxf-rs consumer --&amp;gt; &amp;lt;cxf:rsServer id=&amp;quot;rsServer&amp;quot; address=&amp;quot;http://localhost:${CXFTestSupport.port1}/CxfRsRouterTest/route&amp;quot; serviceClass=&amp;quot;org.apache.camel.component.cxf.jaxrs.testbean.CustomerService&amp;quot; loggingFeatureEnabled=&amp;quot;true&amp;quot; loggingSizeLimit=&amp;quot
 ;20&amp;quot; skipFaultLogging=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;cxf:providers&amp;gt; &amp;lt;ref bean=&amp;quot;jsonProvider&amp;quot;/&amp;gt; &amp;lt;/cxf:providers&amp;gt; &amp;lt;/cxf:rsServer&amp;gt; &amp;lt;!-- Defined the client endpoint to create the cxf-rs producer --&amp;gt; &amp;lt;cxf:rsClient id=&amp;quot;rsClient&amp;quot; address=&amp;quot;http://localhost:${CXFTestSupport.port2}/CxfRsRouterTest/rest&amp;quot; serviceClass=&amp;quot;org.apache.camel.component.cxf.jaxrs.testbean.CustomerService&amp;quot; loggingFeatureEnabled=&amp;quot;true&amp;quot; skipFaultLogging=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;cxf:providers&amp;gt; &amp;lt;ref bean=&amp;quot;jsonProvider&amp;quot;/&amp;gt; &amp;lt;/cxf:providers&amp;gt; &amp;lt;/cxf:rsClient&amp;gt; &amp;lt;!-- The camel route context --&amp;gt; &amp;lt;camelContext id=&amp;quot;camel&amp;quot; xmlns=&amp;quot;http://camel.apache.org/schema/spring&amp;quot;&amp;gt; &amp;lt;route&amp;gt; &amp;lt;!-- Just need to i
 gnoreDeleteMethodMessageBody --&amp;gt; &amp;lt;from uri=&amp;quot;cxfrs://bean://rsServer&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;log:body?level=INFO&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;cxfrs://bean://rsClient?ignoreDeleteMethodMessageBody=true&amp;amp;amp;synchronous=true&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; &amp;lt;/camelContext&amp;gt; &amp;lt;/beans&amp;gt; </script> 
   </div>
  </div><h3 id="BookInOnePage-HowtooverridetheCXFproduceraddressfrommessageheader.1">How to override the CXF producer address from message header</h3><p>The&#160;<code>camel-cxfrs</code>&#160;producer supports to override the services address by setting the message with the key of "<span>CamelDestinationOverrideUrl".</span></p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 

Modified: websites/production/camel/content/book-pattern-appendix.html
==============================================================================
--- websites/production/camel/content/book-pattern-appendix.html (original)
+++ websites/production/camel/content/book-pattern-appendix.html Wed Dec 21 22:21:14 2016
@@ -110,23 +110,24 @@
  <div class="codeContent panelContent pdl"> 
   <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;direct:startInOnly&amp;quot;/&amp;gt; &amp;lt;inOnly uri=&amp;quot;bean:process&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;direct:startInOut&amp;quot;/&amp;gt; &amp;lt;inOut uri=&amp;quot;bean:process&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><h4 id="BookPatternAppendix-UsingThisPattern.1">Using This Pattern</h4><p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookPatternAppendix-PipesandFilters">Pipes and Filters</h3><p>Camel supports the <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/PipesAndFilters.html" rel="nofollow">Pipes and Filters</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> in various ways.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-exter
 nal-resource" src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif"></span></p><p>With Camel you can split your processing across multiple independent <a shape="rect" href="endpoint.html">Endpoint</a> instances which can then be chained together.</p><h4 id="BookPatternAppendix-UsingRoutingLogic">Using Routing Logic</h4><p>You can create pipelines of logic using multiple <a shape="rect" href="endpoint.html">Endpoint</a> or <a shape="rect" href="message-translator.html">Message Translator</a> instances as follows</p><div class="code panel pdl" style="border-width: 1px;">
+</div><h4 id="BookPatternAppendix-UsingThisPattern.1">Using This Pattern</h4><p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookPatternAppendix-PipesandFilters">Pipes and Filters</h3><p>Camel supports the <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/PipesAndFilters.html" rel="nofollow">Pipes and Filters</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> in various ways.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-exter
 nal-resource" src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif"></span></p><p>With Camel you can split your processing across multiple independent <a shape="rect" href="endpoint.html">Endpoint</a> instances which can then be chained together.</p><h4 id="BookPatternAppendix-UsingRoutingLogic">Using Routing Logic</h4><p>You can create pipelines of logic using multiple <a shape="rect" href="endpoint.html">Endpoint</a> or <a shape="rect" href="message-translator.html">Message Translator</a> instances as follows
+ </p><div class="code panel pdl" style="border-width: 1px;">
+  <div class="codeContent panelContent pdl"> 
+   <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> from(&amp;quot;direct:a&amp;quot;).pipeline(&amp;quot;direct:x&amp;quot;, &amp;quot;direct:y&amp;quot;, &amp;quot;direct:z&amp;quot;, &amp;quot;mock:result&amp;quot;); </script> 
+  </div>
+ </div>Though pipeline is the default mode of operation when you specify multiple outputs in Camel. The opposite to pipeline is multicast; which fires the same message into each of its outputs. (See the example below).<p>In Spring XML you can use the&#160;<strong><code>&lt;pipeline/&gt;</code></strong> element</p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> from(&amp;quot;direct:a&amp;quot;).pipeline(&amp;quot;direct:x&amp;quot;, &amp;quot;direct:y&amp;quot;, &amp;quot;direct:z&amp;quot;, &amp;quot;mock:result&amp;quot;); </script> 
+  <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter">&amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><p>Though pipeline is the default mode of operation when you specify multiple outputs in Camel. The opposite to pipeline is multicast; which fires the same message into each of its outputs. (See the example below).</p><p>In Spring XML you can use the &lt;pipeline/&gt; element</p><div class="code panel pdl" style="border-width: 1px;">
+</div><p>In the above the pipeline element is actually unnecessary, you could use this:</p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/route&amp;gt; </script> 
+  <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter">&amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><p>In the above the pipeline element is actually unnecessary, you could use this...</p><div class="code panel pdl" style="border-width: 1px;">
+</div><p>which is a bit more explicit.</p><p>However if you wish to use&#160;<strong><code>&lt;multicast/&gt;</code></strong> to avoid a pipeline - to send the same message into multiple pipelines - then the&#160;<strong><code>&lt;pipeline/&gt;</code></strong> element comes into its own:</p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/route&amp;gt; </script> 
+  <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter">&amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;multicast&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;something&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;log:Something&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/multicast&amp;gt; &amp;lt;/route&amp;gt; </script> 
  </div>
-</div><p>Its just a bit more explicit. However if you wish to use &lt;multicast/&gt; to avoid a pipeline - to send the same message into multiple pipelines - then the &lt;pipeline/&gt; element comes into its own.</p><div class="code panel pdl" style="border-width: 1px;">
- <div class="codeContent panelContent pdl"> 
-  <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> &amp;lt;route&amp;gt; &amp;lt;from uri=&amp;quot;activemq:SomeQueue&amp;quot;/&amp;gt; &amp;lt;multicast&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;something&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;log:Something&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;pipeline&amp;gt; &amp;lt;bean ref=&amp;quot;foo&amp;quot;/&amp;gt; &amp;lt;bean ref=&amp;quot;bar&amp;quot;/&amp;gt; &amp;lt;to uri=&amp;quot;activemq:OutputQueue&amp;quot;/&amp;gt; &amp;lt;/pipeline&amp;gt; &amp;lt;/multicast&amp;gt; &amp;lt;/route&amp;gt; </script> 
- </div>
-</div><p>In the above example we are routing from a single <a shape="rect" href="endpoint.html">Endpoint</a> to a list of different endpoints specified using <a shape="rect" href="uris.html">URIs</a>. If you find the above a bit confusing, try reading about the <a shape="rect" href="architecture.html">Architecture</a> or try the <a shape="rect" href="examples.html">Examples</a></p><h4 id="BookPatternAppendix-UsingThisPattern.2">Using This Pattern</h4><p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookPatternAppendix-MessageRouter">Message Router</h3><p>The 
 <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/MessageRouter.html" rel="nofollow">Message Router</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> allows you to consume from an input destination, evaluate some predicate then choose the right output destination.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif"></span></p><p>The following example shows how to route a request from an input <strong>queue:a</strong> endpoint to either <strong>queue:b</strong>, <strong>queue:c</strong> or <strong>queue:d</strong> depending on the evaluation of various <a shape="rect" href="predicate.html">Predicate</a> expressions</p><p><strong>Using the <a shape="rect" href="fluent-builders.html">Fl
 uent Builders</a></strong></p><div class="code panel pdl" style="border-width: 1px;">
+</div><p>In the above example we are routing from a single <a shape="rect" href="endpoint.html">Endpoint</a> to a list of different endpoints specified using <a shape="rect" href="uris.html">URIs</a>. If you find the above a bit confusing, try reading about the <a shape="rect" href="architecture.html">Architecture</a> or try the <a shape="rect" href="examples.html">Examples</a></p><p></p><h4 id="BookPatternAppendix-UsingThisPattern.2">Using This Pattern</h4> <p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p><h3 id="BookPatternAppendix-MessageRouter">Message Router</h3
 ><p>The <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/MessageRouter.html" rel="nofollow">Message Router</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> allows you to consume from an input destination, evaluate some predicate then choose the right output destination.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/MessageRouter.gif"></span></p><p>The following example shows how to route a request from an input <strong>queue:a</strong> endpoint to either <strong>queue:b</strong>, <strong>queue:c</strong> or <strong>queue:d</strong> depending on the evaluation of various <a shape="rect" href="predicate.html">Predicate</a> expressions</p><p><strong>Using the <a shape="rect" href="fluent-builders.
 html">Fluent Builders</a></strong></p><div class="code panel pdl" style="border-width: 1px;">
  <div class="codeContent panelContent pdl"> 
   <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"> RouteBuilder builder = new RouteBuilder() { public void configure() { errorHandler(deadLetterChannel(&amp;quot;mock:error&amp;quot;)); from(&amp;quot;direct:a&amp;quot;) .choice() .when(header(&amp;quot;foo&amp;quot;).isEqualTo(&amp;quot;bar&amp;quot;)) .to(&amp;quot;direct:b&amp;quot;) .when(header(&amp;quot;foo&amp;quot;).isEqualTo(&amp;quot;cheese&amp;quot;)) .to(&amp;quot;direct:c&amp;quot;) .otherwise() .to(&amp;quot;direct:d&amp;quot;); } }; </script> 
  </div>

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

Modified: websites/production/camel/content/pipes-and-filters.html
==============================================================================
--- websites/production/camel/content/pipes-and-filters.html (original)
+++ websites/production/camel/content/pipes-and-filters.html Wed Dec 21 22:21:14 2016
@@ -86,31 +86,12 @@
 	<tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h3 id="PipesandFilters-PipesandFilters">Pipes and Filters</h3>
-
-<p>Camel supports the <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/PipesAndFilters.html" rel="nofollow">Pipes and Filters</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> in various ways.</p>
-
-<p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif"></span></p>
-
-<p>With Camel you can split your processing across multiple independent <a shape="rect" href="endpoint.html">Endpoint</a> instances which can then be chained together.</p>
-
-<h4 id="PipesandFilters-UsingRoutingLogic">Using Routing Logic</h4>
-
-<p>You can create pipelines of logic using multiple <a shape="rect" href="endpoint.html">Endpoint</a> or <a shape="rect" href="message-translator.html">Message Translator</a> instances as follows</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h3 id="PipesandFilters-PipesandFilters">Pipes and Filters</h3><p>Camel supports the <a shape="rect" class="external-link" href="http://www.enterpriseintegrationpatterns.com/PipesAndFilters.html" rel="nofollow">Pipes and Filters</a> from the <a shape="rect" href="enterprise-integration-patterns.html">EIP patterns</a> in various ways.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif" data-image-src="http://www.enterpriseintegrationpatterns.com/img/PipesAndFilters.gif"></span></p><p>With Camel you can split your processing across multiple independent <a shape="rect" href="endpoint.html">Endpoint</a> instances which can then be chained together.</p><h4 id="PipesandFilters-UsingRoutingLogic">Using Routing Logic</h4><p>You can create pipelines of logic using multiple <a shape="rect" href="endpoint.html">End
 point</a> or <a shape="rect" href="message-translator.html">Message Translator</a> instances as follows</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 from(&quot;direct:a&quot;).pipeline(&quot;direct:x&quot;, &quot;direct:y&quot;, &quot;direct:z&quot;, &quot;mock:result&quot;);
 ]]></script>
-</div></div>
-
-<p>Though pipeline is the default mode of operation when you specify multiple outputs in Camel. The opposite to pipeline is multicast; which fires the same message into each of its outputs. (See the example below).</p>
-
-<p>In Spring XML you can use the &lt;pipeline/&gt; element</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
-&lt;route&gt;
+</div></div>Though pipeline is the default mode of operation when you specify multiple outputs in Camel. The opposite to pipeline is multicast; which fires the same message into each of its outputs. (See the example below).<p>In Spring XML you can use the&#160;<strong><code>&lt;pipeline/&gt;</code></strong> element</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;route&gt;
   &lt;from uri=&quot;activemq:SomeQueue&quot;/&gt;
   &lt;pipeline&gt;
     &lt;bean ref=&quot;foo&quot;/&gt;
@@ -119,26 +100,16 @@ from(&quot;direct:a&quot;).pipeline(&quo
   &lt;/pipeline&gt;
 &lt;/route&gt;
 ]]></script>
-</div></div>
-
-<p>In the above the pipeline element is actually unnecessary, you could use this...</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
-&lt;route&gt;
+</div></div><p>In the above the pipeline element is actually unnecessary, you could use this:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;route&gt;
   &lt;from uri=&quot;activemq:SomeQueue&quot;/&gt;
   &lt;bean ref=&quot;foo&quot;/&gt;
   &lt;bean ref=&quot;bar&quot;/&gt;
   &lt;to uri=&quot;activemq:OutputQueue&quot;/&gt;
 &lt;/route&gt;
 ]]></script>
-</div></div>
-
-<p>Its just a bit more explicit. However if you wish to use &lt;multicast/&gt; to avoid a pipeline - to send the same message into multiple pipelines - then the &lt;pipeline/&gt; element comes into its own.</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
-&lt;route&gt;
+</div></div><p>which is a bit more explicit.</p><p>However if you wish to use&#160;<strong><code>&lt;multicast/&gt;</code></strong> to avoid a pipeline - to send the same message into multiple pipelines - then the&#160;<strong><code>&lt;pipeline/&gt;</code></strong> element comes into its own:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;route&gt;
   &lt;from uri=&quot;activemq:SomeQueue&quot;/&gt;
   &lt;multicast&gt;
     &lt;pipeline&gt;
@@ -153,14 +124,7 @@ from(&quot;direct:a&quot;).pipeline(&quo
   &lt;/multicast&gt;
 &lt;/route&gt;
 ]]></script>
-</div></div>
-
-
-
-
-<p>In the above example we are routing from a single <a shape="rect" href="endpoint.html">Endpoint</a> to a list of different endpoints specified using <a shape="rect" href="uris.html">URIs</a>. If you find the above a bit confusing, try reading about the <a shape="rect" href="architecture.html">Architecture</a> or try the <a shape="rect" href="examples.html">Examples</a></p>
-
-<h4 id="PipesandFilters-UsingThisPattern">Using This Pattern</h4>
+</div></div><p>In the above example we are routing from a single <a shape="rect" href="endpoint.html">Endpoint</a> to a list of different endpoints specified using <a shape="rect" href="uris.html">URIs</a>. If you find the above a bit confusing, try reading about the <a shape="rect" href="architecture.html">Architecture</a> or try the <a shape="rect" href="examples.html">Examples</a></p><p></p><h4 id="PipesandFilters-UsingThisPattern">Using This Pattern</h4>
 
 <p>If you would like to use this EIP Pattern then please read the <a shape="rect" href="getting-started.html">Getting Started</a>, you may also find the <a shape="rect" href="architecture.html">Architecture</a> useful particularly the description of <a shape="rect" href="endpoint.html">Endpoint</a> and <a shape="rect" href="uris.html">URIs</a>. Then you could try out some of the <a shape="rect" href="examples.html">Examples</a> first before trying this pattern out.</p></div>
         </td>