Modified: websites/production/camel/content/book-quickstart.html
==============================================================================
--- websites/production/camel/content/book-quickstart.html (original)
+++ websites/production/camel/content/book-quickstart.html Thu Nov 29 08:26:57 
2018
@@ -94,9 +94,9 @@
 
 <p>To start using Apache Camel quickly, you can read through some simple 
examples in this chapter. For readers who would like a more thorough 
introduction, please skip ahead to Chapter 3.</p>
 
-<h2 id="BookQuickstart-WalkthroughanExampleCode">Walk through an Example 
Code</h2><p>This mini-guide takes you through the source code of a <a 
shape="rect" class="external-link" 
href="https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java";>simple
 example</a>.</p><p>Camel can be configured either by using <a shape="rect" 
href="spring.html">Spring</a> or directly in Java - which <a shape="rect" 
class="external-link" 
href="https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java";>this
 example does</a>.</p><p>This example is available in the 
<code>examples\camel-example-jms-file</code> directory of the <a shape="rect" 
href="download.html">Camel distribution</a>.</p><p>We start with creating a <a 
shape="rect" href="camelcontext.html">CamelContext</a> - which is a container 
for <a shape="rect" href
 ="components.html">Components</a>, <a shape="rect" 
href="routes.html">Routes</a> 
etc:<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>There
 is more than one way of adding a Component to the CamelContext. You can add 
components implicitly - when we set up the routing - as we do here for the <a 
shape="rect" 
href="file2.html">FileComponent</a>:<plain-text-body>{snippet:id=e3|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>or
 explicitly - as we do here when we add the JMS 
Component:<plain-text-body>{snippet:id=e2|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>The
 above works with any JMS provider. If we know we are using <a shape="rect" 
href="active
 mq.html">ActiveMQ</a> we can use an even simpler form using the <a 
shape="rect" class="external-link" 
href="http://activemq.apache.org/maven/5.5.0/activemq-camel/apidocs/org/apache/activemq/camel/component/ActiveMQComponent.html#activeMQComponent%28java.lang.String%29";><code>activeMQComponent()</code>
 method</a> while specifying the <a shape="rect" class="external-link" 
href="http://activemq.apache.org/configuring-transports.html";>brokerURL</a> 
used to connect to ActiveMQ</p><p>In normal use, an external system would be 
firing messages or events directly into Camel through one if its <a 
shape="rect" href="components.html">Components</a> but we are going to use the 
<a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/ProducerTemplate.html";>ProducerTemplate</a>
 which is a really easy way for testing your 
configuration:<plain-text-body>{snippet:id=e4|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/
 
org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>Next
 you <strong>must</strong> start the camel context. If you are using <a 
shape="rect" href="spring.html">Spring</a> to configure the camel context this 
is automatically done for you; though if you are using a pure Java approach 
then you just need to call the start() 
method</p><plain-text-body>camelContext.start();
-</plain-text-body><p>This will start all of the configured routing 
rules.</p><p>So after starting the <a shape="rect" 
href="camelcontext.html">CamelContext</a>, we can fire some objects into 
camel:<plain-text-body>{snippet:id=e5|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body></p><h2
 id="BookQuickstart-Whathappens?">What happens?</h2><p>From the <a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/ProducerTemplate.html";>ProducerTemplate</a>
 - we send objects (in this case text) into the <a shape="rect" 
href="camelcontext.html">CamelContext</a> to the Component 
<em>test-jms:queue:test.queue</em>. These text objects will be <a shape="rect" 
href="type-converter.html">converted automatically</a> into JMS Messages and 
posted to a JMS Queue named <em>test.queue</em>. When we set up the <a 
shape="rect" href="routes.html">Ro
 ute</a>, we configured the <a shape="rect" href="file2.html">FileComponent</a> 
to listen off the <em>test.queue</em>.</p><p>The File <a shape="rect" 
href="file2.html">FileComponent</a> will take messages off the Queue, and save 
them to a directory named <em>test</em>. Every message will be saved in a file 
that corresponds to its destination and message id.</p><p>Finally, we 
configured our own listener in the <a shape="rect" href="routes.html">Route</a> 
- to take notifications from the <a shape="rect" 
href="file2.html">FileComponent</a> and print them out as 
text.</p><p><strong>That's it!</strong></p><p>If you have the time then use 5 
more minutes to <a shape="rect" href="walk-through-another-example.html">Walk 
through another example</a> that demonstrates the Spring DSL (XML based) 
routing.</p>
-<h2 id="BookQuickstart-Walkthroughanotherexample">Walk through another 
example</h2>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 id="BookQuickstart-WalkthroughanExampleCode">Walk 
through an Example Code</h2><p>This mini-guide takes you through the source 
code of a <a shape="rect" class="external-link" 
href="https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java";>simple
 example</a>.</p><p>Camel can be configured either by using <a shape="rect" 
href="spring.html">Spring</a> or directly in Java - which <a shape="rect" 
class="external-link" 
href="https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java";>this
 example does</a>.</p><p>This example is available in the 
<code>examples\camel-example-jms-file</code> directory of the <a shape="rect" 
href="download.html">Camel distribution</a>.</p><p>We start with creating a <a 
shape="rect" href=
 "camelcontext.html">CamelContext</a> - which is a container for <a 
shape="rect" href="components.html">Components</a>, <a shape="rect" 
href="routes.html">Routes</a> 
etc:<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>There
 is more than one way of adding a Component to the CamelContext. You can add 
components implicitly - when we set up the routing - as we do here for the <a 
shape="rect" 
href="file2.html">FileComponent</a>:<plain-text-body>{snippet:id=e3|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>or
 explicitly - as we do here when we add the JMS 
Component:<plain-text-body>{snippet:id=e2|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>The
 abo
 ve works with any JMS provider. If we know we are using <a shape="rect" 
href="activemq.html">ActiveMQ</a> we can use an even simpler form using the <a 
shape="rect" class="external-link" 
href="http://activemq.apache.org/maven/5.5.0/activemq-camel/apidocs/org/apache/activemq/camel/component/ActiveMQComponent.html#activeMQComponent%28java.lang.String%29";><code>activeMQComponent()</code>
 method</a> while specifying the <a shape="rect" class="external-link" 
href="http://activemq.apache.org/configuring-transports.html";>brokerURL</a> 
used to connect to ActiveMQ</p><p>In normal use, an external system would be 
firing messages or events directly into Camel through one if its <a 
shape="rect" href="components.html">Components</a> but we are going to use the 
<a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/ProducerTemplate.html";>ProducerTemplate</a>
 which is a really easy way for testing your configuration:<plain-text-body>{sn
 
ippet:id=e4|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body>Next
 you <strong>must</strong> start the camel context. If you are using <a 
shape="rect" href="spring.html">Spring</a> to configure the camel context this 
is automatically done for you; though if you are using a pure Java approach 
then you just need to call the start() 
method</p><plain-text-body>camelContext.start();
+</plain-text-body><p>This will start all of the configured routing 
rules.</p><p>So after starting the <a shape="rect" 
href="camelcontext.html">CamelContext</a>, we can fire some objects into 
camel:<plain-text-body>{snippet:id=e5|lang=java|url=camel/trunk/examples/camel-example-jms-file/src/main/java/org/apache/camel/example/jmstofile/CamelJmsToFileExample.java}</plain-text-body></p><h2
 id="BookQuickstart-Whathappens?">What happens?</h2><p>From the <a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/ProducerTemplate.html";>ProducerTemplate</a>
 - we send objects (in this case text) into the <a shape="rect" 
href="camelcontext.html">CamelContext</a> to the Component 
<em>test-jms:queue:test.queue</em>. These text objects will be <a shape="rect" 
href="type-converter.html">converted automatically</a> into JMS Messages and 
posted to a JMS Queue named <em>test.queue</em>. When we set up the <a 
shape="rect" href="routes.html">Ro
 ute</a>, we configured the <a shape="rect" href="file2.html">FileComponent</a> 
to listen off the <em>test.queue</em>.</p><p>The File <a shape="rect" 
href="file2.html">FileComponent</a> will take messages off the Queue, and save 
them to a directory named <em>test</em>. Every message will be saved in a file 
that corresponds to its destination and message id.</p><p>Finally, we 
configured our own listener in the <a shape="rect" href="routes.html">Route</a> 
- to take notifications from the <a shape="rect" 
href="file2.html">FileComponent</a> and print them out as 
text.</p><p><strong>That's it!</strong></p><p>If you have the time then use 5 
more minutes to <a shape="rect" href="walk-through-another-example.html">Walk 
through another example</a> that demonstrates the Spring DSL (XML based) 
routing.</p></div>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookQuickstart-Walkthroughanotherexample">Walk through another example</h2>
 
 <h3 id="BookQuickstart-Introduction">Introduction</h3>
 <p>Continuing the walk from our first <a shape="rect" 
href="walk-through-an-example.html">example</a>, we take a closer look at the 
routing and explain a few pointers - so you won't walk into a bear trap, but 
can enjoy an after-hours walk to the local pub for a large beer <img 
class="emoticon emoticon-wink" 
src="https://cwiki.apache.org/confluence/s/en_GB/7701/d7b403a44466e5e8970db7530201039d865e79e1/_/images/icons/emoticons/wink.svg";
 data-emoticon-name="wink" alt="(wink)"></p>
@@ -225,7 +225,7 @@
 <p>This example is also based on the <strong>in-only</strong> message exchange 
pattern. What you must understand as well is the <strong>in-out</strong> 
message exchange pattern, where the caller expects a response. We will look 
into this in another example.</p>
 
 <h3 id="BookQuickstart-Seealso">See also</h3>
-<ul class="alternate"><li><a shape="rect" 
href="examples.html">Examples</a></li><li><a shape="rect" 
href="tutorials.html">Tutorials</a></li><li><a shape="rect" 
href="user-guide.html">User Guide</a></li></ul></div>
+<ul class="alternate"><li><a shape="rect" 
href="examples.html">Examples</a></li><li><a shape="rect" 
href="tutorials.html">Tutorials</a></li><li><a shape="rect" 
href="user-guide.html">User Guide</a></li></ul></div></div>
 
 </div>
         </td>

Modified: websites/production/camel/content/book-tutorials.html
==============================================================================
--- websites/production/camel/content/book-tutorials.html (original)
+++ websites/production/camel/content/book-tutorials.html Thu Nov 29 08:26:57 
2018
@@ -97,7 +97,7 @@
 
 <p>There now follows the documentation on camel tutorials</p>
 
-We have a number of tutorials as listed below. The tutorials often comes with 
source code which is either available in the Camel <a shape="rect" 
href="download.html">Download</a> or attached to the wiki page.
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include">We have a number of tutorials as listed below. The 
tutorials often comes with source code which is either available in the Camel 
<a shape="rect" href="download.html">Download</a> or attached to the wiki page.
 
 <div class="confluence-information-macro 
confluence-information-macro-information conf-macro output-block" 
data-hasbody="true" data-macro-name="info"><p class="title">Notice</p><span 
class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"> </span><div 
class="confluence-information-macro-body">
 <p>These tutorials listed below, is hosted at Apache. We offer the <a 
shape="rect" href="articles.html">Articles</a> page where we have a link 
collection for 3rd party Camel material, such as tutorials, blog posts, 
published articles, videos, pod casts, presentations, and so forth.</p>
@@ -146,9 +146,9 @@ The tutorial has been designed in two pa
 
 
 <ul><li><a shape="rect" href="examples.html">Examples</a><br clear="none">
-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>
+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></div>
 
-<h2 id="BookTutorials-TutorialonSpringRemotingwithJMS">Tutorial on Spring 
Remoting with JMS</h2><p>&#160;</p><parameter 
ac:name="title">Thanks</parameter><rich-text-body><p>This tutorial was kindly 
donated to Apache Camel by Martin Gilday.</p></rich-text-body><h2 
id="BookTutorials-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></p><h2 
id="BookTutorials-Prerequisites">Prerequisites</h2><p>This tutorial uses Maven 
to setup the Camel project and for dependencies for artifacts.</p><h2 
id="BookTutorials-Distribution">Distribution</h2><p>This sample is distributed 
with the Camel distribution as 
<code>examples/camel-example-spring-jms</code>.</p><h2 id="BookTutorials-A
 bout">About</h2><p>This tutorial is a simple example that demonstrates more 
the fact how well Camel is seamless integrated with Spring to leverage the best 
of both worlds. This sample is client server solution using JMS messaging as 
the transport. The sample has two flavors of servers and also for clients 
demonstrating different techniques for easy communication.</p><p>The Server is 
a JMS message broker that routes incoming messages to a business service that 
does computations on the received message and returns a response.<br 
clear="none"> The EIP patterns used in this sample are:</p><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Pattern</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="message-channel.html">Message Channel</a></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>We need a chan
 nel so the Clients can communicate with the server.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="message.html">Message </a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The information is exchanged using the Camel Message 
interface.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="message-translator.html">Message 
Translator</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>This 
is where Camel shines as the message exchange between the Server and the 
Clients are text based strings with numbers. However our business service uses 
int for numbers. So Camel can do the message translation 
automatically.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="message-endpoint.html">Message 
Endpoint</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>It 
should be easy to send messages to the Server from the the clients. This is a
 chieved with Camel's powerful Endpoint pattern that even can be more powerful 
combined with Spring remoting. The tutorial has clients using each kind of 
technique for this.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" 
href="point-to-point-channel.html">Point to Point Channel</a></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The client and server exchange 
data using point to point using a JMS queue.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="event-driven-consumer.html">Event Driven Consumer</a></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><span>The JMS broker is event 
driven and is invoked when the client sends a message to the 
server.</span></p></td></tr></tbody></table></div><p>We use the following Camel 
components:</p><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Component</p></th><th colspan="1
 " rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="activemq.html">ActiveMQ</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>We use Apache ActiveMQ as the JMS broker on the Server 
side</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" href="bean.html">Bean</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>We use the bean binding to easily route the messages to 
our business service. This is a very powerful component in 
Camel.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" href="file2.html">File</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>In the AOP enabled Server we store audit trails as 
files.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" href="jms.html">JMS</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Used for the JMS
  messaging</p></td></tr></tbody></table></div><h2 
id="BookTutorials-CreatetheCamelProject">Create the Camel 
Project</h2><rich-text-body><p>For the purposes of the tutorial a single Maven 
project will be used for both the client and server. Ideally you would break 
your application down into the appropriate 
components.</p></rich-text-body><plain-text-body>mvn archetype:generate 
-DgroupId=org.example -DartifactId=CamelWithJmsAndSpring
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookTutorials-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting 
with JMS</h2><p>&#160;</p><parameter 
ac:name="title">Thanks</parameter><rich-text-body><p>This tutorial was kindly 
donated to Apache Camel by Martin Gilday.</p></rich-text-body><h2 
id="BookTutorials-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></p><h2 
id="BookTutorials-Prerequisites">Prerequisites</h2><p>This tutorial uses Maven 
to setup the Camel project and for dependencies for artifacts.</p><h2 
id="BookTutorials-Distribution">Distribution</h2><p>This sample is distributed 
with the Camel distri
 bution as <code>examples/camel-example-spring-jms</code>.</p><h2 
id="BookTutorials-About">About</h2><p>This tutorial is a simple example that 
demonstrates more the fact how well Camel is seamless integrated with Spring to 
leverage the best of both worlds. This sample is client server solution using 
JMS messaging as the transport. The sample has two flavors of servers and also 
for clients demonstrating different techniques for easy 
communication.</p><p>The Server is a JMS message broker that routes incoming 
messages to a business service that does computations on the received message 
and returns a response.<br clear="none"> The EIP patterns used in this sample 
are:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p>Pattern</p></th><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="message-channel.html">Message Ch
 annel</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>We need 
a channel so the Clients can communicate with the server.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="message.html">Message </a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The information is exchanged using the Camel Message 
interface.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="message-translator.html">Message 
Translator</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>This 
is where Camel shines as the message exchange between the Server and the 
Clients are text based strings with numbers. However our business service uses 
int for numbers. So Camel can do the message translation 
automatically.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="message-endpoint.html">Message 
Endpoint</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"
 ><p>It should be easy to send messages to the Server from the the clients. 
 >This is achieved with Camel's powerful Endpoint pattern that even can be more 
 >powerful combined with Spring remoting. The tutorial has clients using each 
 >kind of technique for this.</p></td></tr><tr><td colspan="1" rowspan="1" 
 >class="confluenceTd"><p><a shape="rect" 
 >href="point-to-point-channel.html">Point to Point Channel</a></p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p>The client and server 
 >exchange data using point to point using a JMS queue.</p></td></tr><tr><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
 >href="event-driven-consumer.html">Event Driven Consumer</a></p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p><span>The JMS broker is event 
 >driven and is invoked when the client sends a message to the 
 >server.</span></p></td></tr></tbody></table></div><p>We use the following 
 >Camel components:</p><div class="table-wrap"><table 
 >class="confluenceTable"><tbody><tr>
 <th colspan="1" rowspan="1" class="confluenceTh"><p>Component</p></th><th 
colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><a shape="rect" 
href="activemq.html">ActiveMQ</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>We use Apache ActiveMQ as the JMS broker on the Server 
side</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" href="bean.html">Bean</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>We use the bean binding to easily route the messages to 
our business service. This is a very powerful component in 
Camel.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" href="file2.html">File</a></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>In the AOP enabled Server we store audit trails as 
files.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" href="jms.html">
 JMS</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Used for 
the JMS messaging</p></td></tr></tbody></table></div><h2 
id="BookTutorials-CreatetheCamelProject">Create the Camel 
Project</h2><rich-text-body><p>For the purposes of the tutorial a single Maven 
project will be used for both the client and server. Ideally you would break 
your application down into the appropriate 
components.</p></rich-text-body><plain-text-body>mvn archetype:generate 
-DgroupId=org.example -DartifactId=CamelWithJmsAndSpring
 </plain-text-body><h3 id="BookTutorials-UpdatethePOMwithDependencies">Update 
the POM with Dependencies</h3><p>First we need to have dependencies for the 
core Camel jars, spring, jms components, and finally ActiveMQ as the message 
broker.<plain-text-body>{snippet:id=e1|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/pom.xml}</plain-text-body>As
 we use spring xml configuration for the ActiveMQ JMS broker we need this 
dependency:<plain-text-body>{snippet:id=e2|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/pom.xml}</plain-text-body></p><h2
 id="BookTutorials-WritingtheServer">Writing the Server</h2><h3 
id="BookTutorials-CreatetheSpringService">Create the Spring Service</h3><p>For 
this example the Spring service (our business service) on the server will be a 
simple multiplier which trebles in the received 
value.<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-spring-jms/src/main/java/org/apache/camel/example/server/Multiplier.java}</
 plain-text-body>And the implementation of this service 
is:<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-spring-jms/src/main/java/org/apache/camel/example/server/Treble.java}</plain-text-body>Notice
 that this class has been annotated with the @Service spring annotation. This 
ensures that this class is registered as a bean in the registry with the given 
name <strong>multiplier</strong>.</p><h3 
id="BookTutorials-DefinetheCamelRoutes">Define the Camel 
Routes</h3><p><plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-spring-jms/src/main/java/org/apache/camel/example/server/ServerRoutes.java}</plain-text-body>This
 defines a Camel route <em>from</em> the JMS queue named 
<strong>numbers</strong> <em>to</em> the Spring <a shape="rect" 
href="bean.html">bean</a> named <strong>multiplier</strong>. Camel will create 
a consumer to the JMS queue which forwards all received messages onto the the 
Spring bean, using the method named <str
 ong>multiply</strong>.</p><h3 id="BookTutorials-ConfigureSpring">Configure 
Spring</h3><p>The Spring config file is placed under 
<code>META-INF/spring</code> as this is the default location used by the <a 
shape="rect" href="camel-maven-plugin.html">Camel Maven Plugin</a>, which we 
will later use to run our server.<br clear="none"> First we need to do the 
standard scheme declarations in the top. In the camel-server.xml we are using 
spring beans as the default <strong>bean:</strong> namespace and springs 
<strong>context:</strong>. For configuring ActiveMQ we use 
<strong>broker:</strong> and for Camel we of course have 
<strong>camel:</strong>. Notice that we don't use version numbers for the 
camel-spring schema. At runtime the schema is resolved in the Camel bundle. If 
we use a specific version number such as 1.4 then its IDE friendly as it would 
be able to import it and provide smart completion etc. See <a shape="rect" 
href="xml-reference.html">Xml Reference</a> for further details.<pl
 
ain-text-body>{snippet:id=e1|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/META-INF/spring/camel-server.xml}</plain-text-body>We
 use Spring annotations for doing IoC dependencies and its component-scan 
features comes to the rescue as it scans for spring annotations in the given 
package 
name:<plain-text-body>{snippet:id=e2|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/META-INF/spring/camel-server.xml}</plain-text-body>Camel
 will of course not be less than Spring in this regard so it supports a similar 
feature for scanning of Routes. This is configured as shown below.<br 
clear="none"> Notice that we also have enabled the <a shape="rect" 
href="camel-jmx.html">JMXAgent</a> so we will be able to introspect the Camel 
Server with a JMX 
Console.<plain-text-body>{snippet:id=e3|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/META-INF/spring/camel-server.xml}</plain-text-body>The
 ActiveMQ JMS broker i
 s also configured in this xml file. We set it up to listen on TCP port 
61610.<plain-text-body>{snippet:id=e4|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/META-INF/spring/camel-server.xml}</plain-text-body>As
 this examples uses JMS then Camel needs a <a shape="rect" href="jms.html">JMS 
component</a> that is connected with the ActiveMQ broker. This is configured as 
shown 
below:<plain-text-body>{snippet:id=e5|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/META-INF/spring/camel-server.xml}</plain-text-body><strong>Notice:</strong>
 The <a shape="rect" href="jms.html">JMS component</a> is configured in 
standard Spring beans, but the gem is that the bean id can be referenced from 
Camel routes - meaning we can do routing using the JMS Component by just using 
<strong>jms:</strong> prefix in the route URI. What happens is that Camel will 
find in the Spring Registry for a bean with the id="jms". Since the bean id can 
have arbitrar
 y name you could have named it id="jmsbroker" and then referenced to it in the 
routing as <code>from="jmsbroker:queue:numbers).to("multiplier");</code><br 
clear="none"> We use the vm protocol to connect to the ActiveMQ server as its 
embedded in this application.</p><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>component-scan</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Defines the package to be scanned for Spring stereotype 
annotations, in this case, to load the "multiplier" bean</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p>camel-context</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Defines the package to be 
scanned for Camel routes. Will find the <code>ServerRoutes</code> class and 
create the routes contained within it</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>jms bean</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Crea
 tes the Camel JMS component</p></td></tr></tbody></table></div><h3 
id="BookTutorials-RuntheServer">Run the Server</h3><p>The Server is started 
using the <code>org.apache.camel.spring.Main</code> class that can start 
camel-spring application out-of-the-box. The Server can be started in several 
flavors:</p><ul class="alternate"><li>as a standard java main application - 
just start the <code>org.apache.camel.spring.Main</code> class</li><li>using 
maven jave:exec</li><li>using <a shape="rect" 
href="camel-run-maven-goal.html">camel:run</a></li></ul><p>In this sample as 
there are two servers (with and without AOP) we have prepared some profiles in 
maven to start the Server of your choice.<br clear="none"> The server is 
started with:<br clear="none"> <code>mvn compile exec:java 
-PCamelServer</code></p><h2 id="BookTutorials-WritingTheClients">Writing The 
Clients</h2><p>This sample has three clients demonstrating different Camel 
techniques for communication</p><ul class="alternate"><li>CamelC
 lient using the <a shape="rect" 
href="producertemplate.html">ProducerTemplate</a> for Spring template style 
coding</li><li>CamelRemoting using Spring Remoting</li><li>CamelEndpoint using 
the Message Endpoint EIP pattern using a neutral Camel API</li></ul><h3 
id="BookTutorials-ClientUsingTheProducerTemplate">Client Using The 
ProducerTemplate</h3><p>We will initially create a client by directly using 
<code>ProducerTemplate</code>. We will later create a client which uses Spring 
remoting to hide the fact that messaging is being 
used.<plain-text-body>{snippet:id=e1|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/camel-client.xml}</plain-text-body><plain-text-body>{snippet:id=e2|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/camel-client.xml}</plain-text-body><plain-text-body>{snippet:id=e3|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/main/resources/camel-client.xml}</plain-text-body>The
 client will not use th
 e <a shape="rect" href="camel-maven-plugin.html">Camel Maven Plugin</a> so the 
Spring XML has been placed in <em>src/main/resources</em> to not conflict with 
the server configs.</p><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>camelContext</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The Camel context is defined but does not contain any 
routes</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>template</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The <code>ProducerTemplate</code> is used to place 
messages onto the JMS queue</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>jms bean</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>This initialises the Camel JMS component, allowing us 
to place messages onto the queue</p></td></tr></tbody></table></div><p>And the 
CamelClient source code:<plain-text-body>{snippet:id=e1|lang=java|url=camel/
 
trunk/examples/camel-example-spring-jms/src/main/java/org/apache/camel/example/client/CamelClient.java}</plain-text-body>The
 <code>ProducerTemplate</code> is retrieved from a Spring 
<code>ApplicationContext</code> and used to manually place a message on the 
"numbers" JMS queue. The <code>requestBody</code> method will use the exchange 
pattern InOut, which states that the call should be synchronous, and that the 
caller expects a response.</p><p>Before running the client be sure that both 
the ActiveMQ broker and the <code>CamelServer</code> are running.</p><h3 
id="BookTutorials-ClientUsingSpringRemoting">Client Using Spring 
Remoting</h3><p><a shape="rect" href="spring-remoting.html">Spring Remoting</a> 
"eases the development of remote-enabled services". It does this by allowing 
you to invoke remote services through your regular Java interface, masking that 
a remote service is being 
called.<plain-text-body>{snippet:id=e1|lang=xml|url=camel/trunk/examples/camel-example-spring-jms/src/ma
 in/resources/camel-client-remoting.xml}</plain-text-body>The snippet above 
only illustrates the different and how Camel easily can setup and use Spring 
Remoting in one line configurations.</p><p>The <strong>proxy</strong> will 
create a proxy service bean for you to use to make the remote invocations. The 
<strong>serviceInterface</strong> property details which Java interface is to 
be implemented by the proxy. The&#160;<strong>serviceUrl</strong> defines where 
messages sent to this proxy bean will be directed. Here we define the JMS 
endpoint with the "numbers" queue we used when working with Camel template 
directly. The value of the <strong>id</strong> property is the name that will 
be the given to the bean when it is exposed through the Spring 
<code>ApplicationContext</code>. We will use this name to retrieve the service 
in our client. I have named the bean <em>multiplierProxy</em> simply to 
highlight that it is not the same multiplier bean as is being used by 
<code>CamelServer</cod
 e>. They are in completely independent contexts and have no knowledge of each 
other. As you are trying to mask the fact that remoting is being used in a real 
application you would generally not include proxy in the name.</p><p>And the 
Java client source 
code:<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-spring-jms/src/main/java/org/apache/camel/example/client/CamelClientRemoting.java}</plain-text-body>Again,
 the client is similar to the original client, but with some important 
differences.</p><ol><li>The Spring context is created with the new 
<em>camel-client-remoting.xml</em></li><li>We retrieve the proxy bean instead 
of a <code>ProducerTemplate</code>. In a non-trivial example you would have the 
bean injected as in the standard Spring manner.</li><li>The multiply method is 
then called directly. In the client we are now working to an interface. There 
is no mention of Camel or JMS inside our Java code.</li></ol><h3 
id="BookTutorials-ClientUsingMess
 ageEndpointEIPPattern">Client Using Message Endpoint EIP Pattern</h3><p>This 
client uses the Message Endpoint EIP pattern to hide the complexity to 
communicate to the Server. The Client uses the same simple API to get hold of 
the endpoint, create an exchange that holds the message, set the payload and 
create a producer that does the send and receive. All done using the same 
neutral Camel API for <strong>all</strong> the components in Camel. So if the 
communication was socket TCP based you just get hold of a different endpoint 
and all the java code stays the same. That is really powerful.</p><p>Okay 
enough talk, show me the 
code!<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/examples/camel-example-spring-jms/src/main/java/org/apache/camel/example/client/CamelClientEndpoint.java}</plain-text-body>Switching
 to a different component is just a matter of using the correct endpoint. So if 
we had defined a TCP endpoint as: <code>"mina:tcp://localhost:61610"</code> 
then its just a
  matter of getting hold of this endpoint instead of the JMS and all the rest 
of the java code is exactly the same.</p><h3 
id="BookTutorials-RuntheClients">Run the Clients</h3><p>The Clients is started 
using their main class respectively.</p><ul class="alternate"><li>as a standard 
java main application - just start their main class</li><li>using maven 
jave:exec</li></ul><p>In this sample we start the clients using maven:<br 
clear="none"> <code>mvn compile exec:java -PCamelClient</code><br clear="none"> 
<code>mvn compile exec:java -PCamelClientRemoting</code><br clear="none"> 
<code>mvn compile exec:java -PCamelClientEndpoint</code></p><p>Also see the 
Maven <code>pom.xml</code> file how the profiles for the clients is 
defined.</p><h2 id="BookTutorials-UsingtheCamelMavenPlugin">Using the Camel 
Maven Plugin</h2><p>The <a shape="rect" href="camel-maven-plugin.html">Camel 
Maven Plugin</a> allows you to run your Camel routes directly from Maven. This 
negates the need to create a host applic
 ation, as we did with Camel server, simply to start up the container. This can 
be very useful during development to get Camel routes running 
quickly.</p><parameter 
ac:name="title">pom.xml</parameter><plain-text-body>&lt;build&gt;
   &lt;plugins&gt;
     &lt;plugin&gt;
@@ -160,9 +160,9 @@ While not actual tutorials you might fin
 </plain-text-body><p>All that is required is a new plugin definition in your 
Maven POM. As we have already placed our Camel config in the default location 
(camel-server.xml has been placed in META-INF/spring/) we do not need to tell 
the plugin where the route definitions are located. Simply run <code>mvn 
camel:run</code>.</p><h2 id="BookTutorials-UsingCamelJMX">Using Camel 
JMX</h2><p>Camel has extensive support for JMX and allows us to inspect the 
Camel Server at runtime. As we have enabled the JMXAgent in our tutorial we can 
fire up the jconsole and connect to the following service URI: 
<code>service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi/camel</code>. Notice 
that Camel will log at INFO level the JMX Connector URI:</p><plain-text-body>...
 DefaultInstrumentationAgent    INFO  JMX connector thread started on 
service:jmx:rmi:///jndi/rmi://claus-acer:1099/jmxrmi/camel
 ...
-</plain-text-body><p>In the screenshot below we can see the route and its 
performance metrics:<br clear="none"> <span 
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image" 
src="book-tutorials.data/jconsole_jms_tutorial.PNG" 
data-image-src="/confluence/download/attachments/82923/jconsole_jms_tutorial.PNG?version=1&amp;modificationDate=1214345078000&amp;api=v2"
 data-unresolved-comment-count="0" data-linked-resource-id="59672517" 
data-linked-resource-version="1" data-linked-resource-type="attachment" 
data-linked-resource-default-alias="jconsole_jms_tutorial.PNG" 
data-base-url="https://cwiki.apache.org/confluence"; 
data-linked-resource-content-type="image/png" 
data-linked-resource-container-id="82923" 
data-linked-resource-container-version="44"></span></p><h2 
id="BookTutorials-SeeAlso">See Also</h2><ul><li><a shape="rect" 
class="external-link" href="http://aminsblog.wordpress.com/2008/05/06/15/"; 
rel="nofollow">Spring Remoting with JMS Example</a> on <a shape="re
 ct" class="external-link" href="http://aminsblog.wordpress.com/"; 
rel="nofollow">Amin Abbaspour's Weblog</a></li></ul>
+</plain-text-body><p>In the screenshot below we can see the route and its 
performance metrics:<br clear="none"> <span 
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image" 
src="book-tutorials.data/jconsole_jms_tutorial.PNG" 
data-image-src="/confluence/download/attachments/82923/jconsole_jms_tutorial.PNG?version=1&amp;modificationDate=1214345078000&amp;api=v2"
 data-unresolved-comment-count="0" data-linked-resource-id="59672517" 
data-linked-resource-version="1" data-linked-resource-type="attachment" 
data-linked-resource-default-alias="jconsole_jms_tutorial.PNG" 
data-base-url="https://cwiki.apache.org/confluence"; 
data-linked-resource-content-type="image/png" 
data-linked-resource-container-id="82923" 
data-linked-resource-container-version="44"></span></p><h2 
id="BookTutorials-SeeAlso">See Also</h2><ul><li><a shape="rect" 
class="external-link" href="http://aminsblog.wordpress.com/2008/05/06/15/"; 
rel="nofollow">Spring Remoting with JMS Example</a> on <a shape="re
 ct" class="external-link" href="http://aminsblog.wordpress.com/"; 
rel="nofollow">Amin Abbaspour's Weblog</a></li></ul></div>
 
-<h2 id="BookTutorials-Tutorial-camel-example-reportincident">Tutorial - 
camel-example-reportincident</h2>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookTutorials-Tutorial-camel-example-reportincident">Tutorial - 
camel-example-reportincident</h2>
 
 
 <h2 id="BookTutorials-Introduction">Introduction</h2>
@@ -218,8 +218,8 @@ Part 6 - Showing a alternative solution
 
 <h2 id="BookTutorials-Links">Links</h2>
 
-<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul>
-<h2 id="BookTutorials-Part1">Part 1</h2>
+<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul></div>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 id="BookTutorials-Part1">Part 1</h2>
 
 <h2 id="BookTutorials-Prerequisites.1">Prerequisites</h2>
 <p>This tutorial uses the following frameworks:</p>
@@ -722,8 +722,8 @@ Tests run: 1, Failures: 0, Errors: 0, Sk
 
 
 <h2 id="BookTutorials-Links.1">Links</h2>
-<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul>
-<h2 id="BookTutorials-Part2">Part 2</h2>
+<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul></div>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 id="BookTutorials-Part2">Part 2</h2>
 
 <h2 id="BookTutorials-AddingCamel">Adding Camel</h2>
 <p>In this part we will introduce Camel so we start by adding Camel to our 
pom.xml:</p>
@@ -1158,8 +1158,8 @@ public class ReportIncidentEndpointImpl
 Brew a cup of coffee, tug the kids and kiss the wife, for now we will have us 
some fun with the Camel. See you in part 3.</p>
 
 <h2 id="BookTutorials-Links.2">Links</h2>
-<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul>
-<h2 id="BookTutorials-Part3">Part 3</h2>
+<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul></div>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 id="BookTutorials-Part3">Part 3</h2>
 
 <h2 id="BookTutorials-Recap">Recap</h2>
 <p>Lets just recap on the solution we have now:</p>
@@ -1484,8 +1484,8 @@ public class ReportIncidentConsumerTest
 
 
 <h2 id="BookTutorials-Links.3">Links</h2>
-<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul>
-<h2 id="BookTutorials-Part4">Part 4</h2>
+<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul></div>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 id="BookTutorials-Part4">Part 4</h2>
 
 <h2 id="BookTutorials-Introduction.1">Introduction</h2>
 <p>This section is about regular Camel. The examples presented here in this 
section is much more in common of all the examples we have in the Camel 
documentation.</p>
@@ -1907,9 +1907,9 @@ So we completed the last piece in the pi
 <p>We have just briefly touched the <strong>routing</strong> in Camel and 
shown how to implement them using the <strong>fluent builder</strong> syntax in 
Java. There is much more to the routing in Camel than shown here, but we are 
learning step by step. We continue in part 5. See you there.</p>
 
 <h2 id="BookTutorials-Links.4">Links</h2>
-<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul>
+<ul class="alternate"><li><a shape="rect" 
href="tutorial-example-reportincident.html">Introduction</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part1.html">Part 
1</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part2.html">Part 2</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part3.html">Part 
3</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part4.html">Part 4</a></li><li><a 
shape="rect" href="tutorial-example-reportincident-part5.html">Part 
5</a></li><li><a shape="rect" 
href="tutorial-example-reportincident-part6.html">Part 6</a></li></ul></div>
 
-<h2 
id="BookTutorials-BetterJMSTransportforCXFWebserviceusingApacheCamel">Better 
JMS Transport for CXF Webservice using Apache Camel </h2>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookTutorials-BetterJMSTransportforCXFWebserviceusingApacheCamel">Better 
JMS Transport for CXF Webservice using Apache Camel </h2>
 <p>Configuring JMS in Apache CXF before Version 2.1.3 is possible but not 
really easy or nice. This article shows how to use Apache Camel to provide a 
better JMS Transport for CXF.</p>
 
 <p><strong>Update:</strong> Since CXF 2.1.3 there is a new way of configuring 
JMS (<a shape="rect" 
href="http://cxf.apache.org/docs/using-the-jmsconfigfeature.html";>Using the 
JMSConfigFeature</a>). It makes JMS config for CXF as easy as with Camel. Using 
Camel for JMS is still a good idea if you want to use the rich feature of Camel 
for routing and other Integration Scenarios that CXF does not support.</p>
@@ -1991,19 +1991,19 @@ So we completed the last piece in the pi
 
 <h3 id="BookTutorials-Conclusion.1">Conclusion</h3>
 
-<p>As you have seen in this example you can use Camel to connect services to 
JMS easily while being able to also use the rich integration features of Apache 
Camel.</p>
+<p>As you have seen in this example you can use Camel to connect services to 
JMS easily while being able to also use the rich integration features of Apache 
Camel.</p></div>
 
-<h2 id="BookTutorials-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 
1.4 with Apache Camel</h2>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookTutorials-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 
with Apache Camel</h2>
 
 <div class="confluence-information-macro 
confluence-information-macro-information conf-macro output-block" 
data-hasbody="true" data-macro-name="info"><p class="title">Removed from 
distribution</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"> </span><div 
class="confluence-information-macro-body">
 <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>
 
 <div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="toc"><style type="text/css">/*<![CDATA[*/
-div.rbtoc1541848947669 {padding: 0px;}
-div.rbtoc1541848947669 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1541848947669 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1543479803995 {padding: 0px;}
+div.rbtoc1543479803995 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1543479803995 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1541848947669">
+/*]]>*/</style><div class="toc-macro rbtoc1543479803995">
 <ul class="toc-indentation"><li><a shape="rect" 
href="#BookTutorials-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 
1.4 with Apache Camel</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#BookTutorials-Prerequisites">Prerequisites</a></li><li><a shape="rect" 
href="#BookTutorials-Distribution">Distribution</a></li><li><a shape="rect" 
href="#BookTutorials-Introduction">Introduction</a></li><li><a shape="rect" 
href="#BookTutorials-SettinguptheprojecttorunAxis">Setting up the project to 
run Axis</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#BookTutorials-Maven2">Maven 2</a></li><li><a shape="rect" 
href="#BookTutorials-wsdl">wsdl</a></li><li><a shape="rect" 
href="#BookTutorials-ConfiguringAxis">Configuring Axis</a></li><li><a 
shape="rect" href="#BookTutorials-RunningtheExample">Running the 
Example</a></li></ul>
@@ -2954,9 +2954,9 @@ Since we use annotations on the field di
 <p>Note that the code shown here also applies to Camel 1.4 so actually you can 
get started right away with the released version of Camel. As this time of 
writing Camel 1.5 is work in progress.</p>
 
 <h3 id="BookTutorials-SeeAlso.1">See Also</h3>
-<ul class="alternate"><li><a shape="rect" 
href="tutorials.html">Tutorials</a></li><li><a shape="rect" 
href="examples.html">Examples</a></li></ul>
+<ul class="alternate"><li><a shape="rect" 
href="tutorials.html">Tutorials</a></li><li><a shape="rect" 
href="examples.html">Examples</a></li></ul></div>
 
-<h2 id="BookTutorials-TutorialonusingCamelinaWebApplication">Tutorial on using 
Camel in a Web Application</h2>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookTutorials-TutorialonusingCamelinaWebApplication">Tutorial on using 
Camel in a Web Application</h2>
 
 <p>Camel has been designed to work great with the <a shape="rect" 
href="spring.html">Spring</a> framework; so if you are already a Spring user 
you can think of Camel as just a framework for adding to your Spring XML 
files.</p>
 
@@ -3084,9 +3084,9 @@ mvn jetty:run
 <pre class="syntaxhighlighter-pre" data-syntaxhighlighter-params="brush: java; 
gutter: false; theme: Default" data-theme="Default">
 mvn -Dtest=false jetty:run
 </pre>
-</div></div>
+</div></div></div>
 
-<h2 id="BookTutorials-TutorialBusinessPartners">Tutorial Business Partners</h2>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h2 
id="BookTutorials-TutorialBusinessPartners">Tutorial Business Partners</h2>
 
 <div class="confluence-information-macro confluence-information-macro-note 
conf-macro output-block" data-hasbody="true" data-macro-name="note"><p 
class="title">Under Construction</p><span class="aui-icon aui-icon-small 
aui-iconfont-warning confluence-information-macro-icon"> </span><div 
class="confluence-information-macro-body">
 <p>This tutorial is a work in progress.</p></div></div>
@@ -3539,7 +3539,7 @@ public class CSVInputTest extends Abstra
 
 <p>...</p>
 
-<h3 id="BookTutorials-Step8:CreateaunittestfortheCustomerInputRoutes">Step 8: 
Create a unit test for the Customer Input Routes</h3></div>
+<h3 id="BookTutorials-Step8:CreateaunittestfortheCustomerInputRoutes">Step 8: 
Create a unit test for the Customer Input Routes</h3></div></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/camel/content/browse.html
==============================================================================
--- websites/production/camel/content/browse.html (original)
+++ websites/production/camel/content/browse.html Thu Nov 29 08:26:57 2018
@@ -130,8 +130,8 @@ browse:someName[?options]
 </div></div>
 
 
-<h3 id="Browse-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>
+<div class="conf-macro output-block" data-hasbody="false" 
data-macro-name="include"><h3 id="Browse-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></div>
         </td>
         <td valign="top">
           <div class="navigation">

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

Propchange: websites/production/camel/content/cache/main.pageCache
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/production/camel/content/camel-2231-release.html
==============================================================================
--- websites/production/camel/content/camel-2231-release.html (added)
+++ websites/production/camel/content/camel-2231-release.html Thu Nov 29 
08:26:57 2018
@@ -0,0 +1,177 @@
+<!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 type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+
+    <title>
+    Apache Camel: Camel 2.23.1 Release
+    </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="community.html">Community</a>&nbsp;&gt;&nbsp;<a 
href="in-progress.html">In Progress</a>&nbsp;&gt;&nbsp;<a 
href="camel-2231-release.html">Camel 2.23.1 Release</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" class="external-link" 
href="https://github.com/apache/camel/"; rel="nofollow">GitHub</a> | <a 
shape="rect" class="external-link" href="https://gitter.im/apache/apache-camel"; 
rel="nofollow">Gitter</a> |&#160;<a shape="rect" 
href="support.html">Support</a></p></div>
+          <!-- Quicklinks -->
+        </div>
+
+        <br> Since we're on a major migration process of this website, some 
component documents here are out of sync right now. In the meantime you may 
want to look at the asciidoc in the repository:
+            https://github.com/apache/camel/blob/master/README.md
+            https://github.com/apache/camel/blob/master/components/readme.adoc 
</br>
+       <table border="0">
+       <tbody>
+        <tr>
+        <td valign="top" width="100%">
+<div class="wiki-content maincontent"><h1 
id="Camel2.23.1Release-Camel2.23.1Release(currentlyinprogress)">Camel 2.23.1 
Release (currently in progress)</h1><div class="conf-macro output-block" 
data-hasbody="true" data-macro-name="div" 
style="padding-right:20px;float:left;margin-left:-20px;"><span 
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image 
confluence-external-resource" 
src="http://camel.apache.org/images/camel-box-small.png"; 
data-image-src="http://camel.apache.org/images/camel-box-small.png";></span></div>
+
+
+<div class="conf-macro output-block" data-hasbody="true" data-macro-name="div" 
style="min-height:200px">&#160;</div>
+
+
+<h2 id="Camel2.23.1Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome 
to the x.y.z release which approx XXX issues resolved (new features, 
improvements and bug fixes such as...)</p><ul><li>highlighted issue 
fixed</li><li>highlighted issue fixed</li></ul><h3 
id="Camel2.23.1Release-New">New <a shape="rect" 
href="enterprise-integration-patterns.html">Enterprise Integration 
Patterns</a></h3><h3 id="Camel2.23.1Release-New.1">New <a shape="rect" 
href="components.html">Components</a></h3><h3 
id="Camel2.23.1Release-NewDSL">New DSL</h3><h3 
id="Camel2.23.1Release-NewAnnotations">New Annotations</h3><h3 
id="Camel2.23.1Release-NewDataFormats">New <a shape="rect" 
href="data-format.html">Data Formats</a></h3><h3 
id="Camel2.23.1Release-New.2">New <a shape="rect" 
href="languages.html">Languages</a></h3><h3 id="Camel2.23.1Release-New.3">New 
<a shape="rect" href="examples.html">Examples</a></h3><h3 
id="Camel2.23.1Release-New.4">New <a shape="rect" 
href="tutorials.html">Tutorials</a></h3><h2 
 id="Camel2.23.1Release-APIbreaking">API breaking</h2><h2 
id="Camel2.23.1Release-KnownIssues">Known Issues</h2><h2 
id="Camel2.23.1Release-Importantchangestoconsiderwhenupgrading">Important 
changes to consider when upgrading</h2><h2 
id="Camel2.23.1Release-GettingtheDistributions">Getting the 
Distributions</h2><h3 id="Camel2.23.1Release-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/x.y.x/apache-camel-x.y.x.zip";>apache-camel-x.y.x.zip</a></p></td><td
 c
 olspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://www.apache.org/dist/camel/apache-camel/x.y.x/apache-camel-x.y.x.zip.asc";>apache-camel-x.y.x.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/x.y.x/apache-camel-x.y.x.tar.gz";>apache-camel-x.y.x.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/x.y.x/apache-camel-x.y.x.tar.gz.asc";>apache-camel-x.y.x.tar.gz.asc</a></p></td></tr></tbody></table></div><div
 class="confluence-information-macro confluence-information-macro-information 
conf-macro output-block" data-hasbody="true" data-macro-name="info"><p 
class="title">The above URLs use redirection</p><span class="au
 i-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"> 
</span><div class="confluence-information-macro-body"><p>The above URLs use the 
Apache Mirror system to redirect you to a suitable mirror for your download. 
Some users have experienced issues with some versions of browsers (e.g. some 
Safari browsers). If the download doesn't seem to work for you from the above 
URL then try using <a shape="rect" class="external-link" 
href="http://www.mozilla.com/en-US/firefox/"; 
rel="nofollow">FireFox</a></p></div></div><h3 
id="Camel2.23.1Release-SourceDistributions">Source 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>Source (zip)</p></td><td col
 span="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/x.y.x/apache-camel-x.y.x-src.zip";>apache-camel-x.y.x-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/x.y.x/apache-camel-x.y.x-src.zip.asc";>apache-camel-x.y.x-src.zip.asc</a></p></td></tr></tbody></table></div><h3
 id="Camel2.23.1Release-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 conf-macro output-block" 
data-hasbody="true" data-macro-name="code" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+<pre class="syntaxhighlighter-pre" data-syntaxhighlighter-params="brush: java; 
gutter: false; theme: Default" data-theme="Default">&lt;dependency&gt;
+  &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
+  &lt;artifactId&gt;camel-core&lt;/artifactId&gt;
+  &lt;version&gt;x.y.x&lt;/version&gt;
+&lt;/dependency&gt;
+</pre>
+</div></div><h3 id="Camel2.23.1Release-GitTagCheckout">Git Tag 
Checkout</h3><div class="code panel pdl conf-macro output-block" 
data-hasbody="true" data-macro-name="code" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+<pre class="syntaxhighlighter-pre" data-syntaxhighlighter-params="brush: java; 
gutter: false; theme: Default" data-theme="Default">git clone 
https://git-wip-us.apache.org/repos/asf/camel.git
+cd camel
+git checkout camel-x.y.x</pre>
+</div></div><h2 id="Camel2.23.1Release-Changelog">Changelog</h2><p>For a more 
detailed view of new features and bug fixes, see the:</p><ul><li><a 
shape="rect" class="external-link" 
href="http://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311211&amp;styleName=Html";>Release
 notes for x.y.x</a></li></ul></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="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect" 
href="irc-room.html">Gitter / IRC Chat</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 s
 hape="rect" href="developers.html">Developer Guide</a></li><li><a shape="rect" 
href="source.html">Source</a></li><li><a shape="rect" class="external-link" 
href="https://github.com/apache/camel/"; rel="nofollow">Github</a></li><li><a 
shape="rect" href="building.html">Building</a></li><li><a shape="rect" 
href="javadoc.html">JavaDoc</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><p>&#160;</p><p><a 
shape="rect" class="external-link" 
href="http://www.apache.org/events/current-event.html";><span class="confl
 uence-embedded-file-wrapper"><img class="confluence-embedded-image 
confluence-external-resource" 
src="http://www.apache.org/events/current-event-125x125.png"; 
data-image-src="http://www.apache.org/events/current-event-125x125.png";></span></a></p></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=97552092";>edit
 page</a>)
+        (<a 
href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=97552092&amp;showComments=true&amp;showCommentArea=true#addcomment";>add
 comment</a>)
+      </div>
+    </div>
+  </div>
+</div>
+</div>
+</div>
+<div class="design_attribution">
+&copy; 2004-2015 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 
[email protected] -->
+<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>
+
+


Reply via email to