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

svn commit: r892946 [11/15] - in /websites/production/camel/content: ./ 2007/08/17/ 2007/08/20/ 2007/10/01/ 2007/10/28/ 2008/04/08/ 2008/04/22/ 2008/04/28/ 2008/07/22/ 2008/10/31/ 2009/01/19/ 2009/02/03/ 2009/02/17/ 2009/03/17/ 2009/05/19/ 2009/06/15/ ...

Modified: websites/production/camel/content/book-component-appendix.html
==============================================================================
--- websites/production/camel/content/book-component-appendix.html (original)
+++ websites/production/camel/content/book-component-appendix.html Mon Jan  6 06:22:14 2014
@@ -400,66 +400,28 @@ amqp:[queue:|topic:]destinationName[?opt
 
 <h3 id="BookComponentAppendix-SeeAlso.1">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>
-<h2 id="BookComponentAppendix-SQSComponent">SQS Component</h2>
-<p><strong>Available as of Camel 2.6</strong></p>
-
-<p>The sqs component supports sending and receiving messages to <a shape="rect" class="external-link" href="http://aws.amazon.com/sqs" rel="nofollow">Amazon's SQS</a> service.</p>
-
-    <div class="aui-message hint shadowed information-macro">
+<h2 id="BookComponentAppendix-SQSComponent">SQS Component</h2><p><strong>Available as of Camel 2.6</strong></p><p>The sqs component supports sending and receiving messages to <a shape="rect" class="external-link" href="http://aws.amazon.com/sqs" rel="nofollow">Amazon's SQS</a> service.</p>    <div class="aui-message hint shadowed information-macro">
                     <p class="title">Prerequisites</p>
                             <span class="aui-icon icon-hint">Icon</span>
                 <div class="message-content">
-                            
-<p>You must have a valid Amazon Web Services developer account, and be signed up to use Amazon SQS. More information are available at <a shape="rect" class="external-link" href="http://aws.amazon.com/sqs" rel="nofollow">Amazon SQS</a>.</p>
+                            <p>You must have a valid Amazon Web Services developer account, and be signed up to use Amazon SQS. More information are available at <a shape="rect" class="external-link" href="http://aws.amazon.com/sqs" rel="nofollow">Amazon SQS</a>.</p>
                     </div>
     </div>
-
-
-<h3 id="BookComponentAppendix-URIFormat">URI Format</h3>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-aws-sqs://queue-name[?options]
+<h3 id="BookComponentAppendix-URIFormat">URI Format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[aws-sqs://queue-name[?options]
 ]]></script>
-</div></div>
-<p>The queue will be created if they don't already exists.<br clear="none">
-You can append query options to the URI in the following format, ?options=value&amp;option2=value&amp;...</p>
-
-<h3 id="BookComponentAppendix-URIOptions">URI Options</h3>
-<div class="confluenceTableSmall">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Name </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Default Value </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Context </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>amazonSQSClient </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Reference to a <code>com.amazonaws.services.sqs.AmazonSQS</code> in the <a shape="rect" href="registry.html" title="Registry">Registry</a>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>accessKey </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><t
 d colspan="1" rowspan="1" class="confluenceTd"><p> Amazon AWS Access Key </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>secretKey </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Amazon AWS Secret Key </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>amazonSQSEndpoint </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The region with which the AWS-SQS client wants to work with. Only works if Camel creates the AWS-SQS client, i.e., if you explicitly set amazonSQSClient, then this setting will have no effect. You would have to set it on the client you create directly </p></td></tr><tr><td colspan="1" rowspan="1" class="conflue
 nceTd"><p>attributeNames </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> A list of attributes to set in the <code>com.amazonaws.services.sqs.model.ReceiveMessageRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>defaultVisibilityTimeout </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The visibility timeout (in seconds) to set in the <code>com.amazonaws.services.sqs.model.CreateQueueRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>deleteAfterRead </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consu
 mer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Delete message from SQS after it has been read </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>deleteIfFiltered </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.12.2,2.13.0</strong> Whether or not to send the DeleteMessage to the SQS queue if an exchange fails to get through a filter. If 'false' and exchange does not make it through a Camel filter upstream in the route, then don't send DeleteMessage. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxMessagesPerPoll</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The maximum number of me
 ssages which can be received in one poll to set in the <code>com.amazonaws.services.sqs.model.ReceiveMessageRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>visibilityTimeout </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. This only make sense if its different from <code>defaultVisibilityTimeout</code>. It changes the queue visibility timeout attribute permanently. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>messageVisibilityTimeout </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspa
 n="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request to set in the <code>com.amazonaws.services.sqs.model.ReceiveMessageRequest</code>. It does <strong>NOT</strong> change the queue visibility timeout attribute permanently. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> extendMessageVisibility </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.10:</strong> If enabled then a scheduled background task will keep extending the message visibility on SQS. This is needed if it taks a long time to process the message. If set to true <code>defaultVisibilityTim
 eout</code> must be set.  See details at <a shape="rect" class="external-link" href="http://docs.amazonwebservices.com/AWSSimpleQueueService/latest/APIReference/Query_QueryChangeMessageVisibility.html" rel="nofollow">Amazon docs</a>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maximumMessageSize </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The maximumMessageSize (in bytes) an SQS message can contain for this queue, to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>messageRetentionPeriod </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rows
 pan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The messageRetentionPeriod (in seconds) a message will be retained by SQS for this queue, to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>policy </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The policy for this queue to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>delaySeconds </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Producer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.9.3:</strong> Dela
 y sending messages for a number of seconds. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>waitTimeSeconds </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Producer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.11:</strong> Duration in seconds (0 to 20) that the ReceiveMessage action call will wait until a message is in the queue to include in the response. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>receiveMessageWaitTimeSeconds </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.11:</strong> If you do not specify WaitTimeSeconds in the request, the queue attribute ReceiveMessageWaitTimeSeconds is used to determine how long to wait. </p></td></t
 r><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>queueOwnerAWSAccountId </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> Specify the queue owner aws account id when you need to connect the queue with different account owner. </p></td></tr></tbody></table>
-</div>
-
+</div></div><p>The queue will be created if they don't already exists.<br clear="none"> You can append query options to the URI in the following format, ?options=value&amp;option2=value&amp;...</p><h3 id="BookComponentAppendix-URIOptions">URI Options</h3><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Name </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Default Value </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Context </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>amazonSQSClient </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Reference to a <code>com.amazonaws.services.sqs.AmazonSQS</code> in the <a shape="rect" href="registry.html" title="Registry"
 >Registry</a>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>accessKey </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Amazon AWS Access Key </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>secretKey </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Amazon AWS Secret Key </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>amazonSQSEndpoint </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The region with which the AWS-SQS client wants to work wi
 th. Only works if Camel creates the AWS-SQS client, i.e., if you explicitly set amazonSQSClient, then this setting will have no effect. You would have to set it on the client you create directly </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>attributeNames </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> A list of attributes to set in the <code>com.amazonaws.services.sqs.model.ReceiveMessageRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>defaultVisibilityTimeout </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The visibility timeout (in seconds) to set in the <code>com.amazonaws.services.sqs.model.Creat
 eQueueRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>deleteAfterRead </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Delete message from SQS after it has been read </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>deleteIfFiltered </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.12.2,2.13.0</strong> Whether or not to send the DeleteMessage to the SQS queue if an exchange fails to get through a filter. If 'false' and exchange does not make it through a Camel filter upstream in the route, then don't send DeleteMessage. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>
 maxMessagesPerPoll</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The maximum number of messages which can be received in one poll to set in the <code>com.amazonaws.services.sqs.model.ReceiveMessageRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>visibilityTimeout </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. This only make sense if its different from <code>defaultVisibilityTimeout</code>. It
  changes the queue visibility timeout attribute permanently. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>messageVisibilityTimeout </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request to set in the <code>com.amazonaws.services.sqs.model.ReceiveMessageRequest</code>. It does <strong>NOT</strong> change the queue visibility timeout attribute permanently. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> extendMessageVisibility </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Consumer </p></td><td colspan="1" rowspan="
 1" class="confluenceTd"><p> <strong>Camel 2.10:</strong> If enabled then a scheduled background task will keep extending the message visibility on SQS. This is needed if it taks a long time to process the message. If set to true <code>defaultVisibilityTimeout</code> must be set.  See details at <a shape="rect" class="external-link" href="http://docs.amazonwebservices.com/AWSSimpleQueueService/latest/APIReference/Query_QueryChangeMessageVisibility.html" rel="nofollow">Amazon docs</a>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maximumMessageSize </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The maximumMessageSize (in bytes) an SQS message can contain for this queue, to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. </p></td></tr><t
 r><td colspan="1" rowspan="1" class="confluenceTd"><p>messageRetentionPeriod </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The messageRetentionPeriod (in seconds) a message will be retained by SQS for this queue, to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>policy </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.8:</strong> The policy for this queue to set in the <code>com.amazonaws.services.sqs.model.SetQueueAttributesRequest</code>. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>delay
 Seconds </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Producer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.9.3:</strong> Delay sending messages for a number of seconds. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>waitTimeSeconds </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Producer </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.11:</strong> Duration in seconds (0 to 20) that the ReceiveMessage action call will wait until a message is in the queue to include in the response. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>receiveMessageWaitTimeSeconds </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p
 > Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 2.11:</strong> If you do not specify WaitTimeSeconds in the request, the queue attribute ReceiveMessageWaitTimeSeconds is used to determine how long to wait. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>queueOwnerAWSAccountId </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> Specify the queue owner aws account id when you need to connect the queue with different account owner. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>region </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Shared </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12.3:</strong> 
 Specify the queue region which could be used with <code>queueOwnerAWSAccountId</code> to build the service URL. </p></td></tr></tbody></table>
     <div class="aui-message hint shadowed information-macro">
                     <p class="title">Required SQS component options</p>
                             <span class="aui-icon icon-hint">Icon</span>
                 <div class="message-content">
-                            
-<p>You have to provide the amazonSQSClient in the <a shape="rect" href="registry.html">Registry</a> or your accessKey and secretKey to access the <a shape="rect" class="external-link" href="http://aws.amazon.com/sqs" rel="nofollow">Amazon's SQS</a>.</p>
+                            <p>You have to provide the amazonSQSClient in the <a shape="rect" href="registry.html">Registry</a> or your accessKey and secretKey to access the <a shape="rect" class="external-link" href="http://aws.amazon.com/sqs" rel="nofollow">Amazon's SQS</a>.</p>
                     </div>
     </div>
-
-
-<h3 id="BookComponentAppendix-BatchConsumer">Batch Consumer</h3>
-<p>This component implements the <a shape="rect" href="batch-consumer.html">Batch Consumer</a>. </p>
-
-<p>This allows you for instance to know how many messages exists in this batch and for instance let the <a shape="rect" href="aggregator.html">Aggregator</a> aggregate this number of messages.</p>
-
-<h3 id="BookComponentAppendix-Usage">Usage</h3>
-<h4 id="BookComponentAppendix-MessageheaderssetbytheSQSproducer">Message headers set by the SQS producer</h4>
-<div class="confluenceTableSmall">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Type </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMD5OfBody</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The MD5 checksum of the Amazon SQS message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMessageId</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Amazon SQS message ID. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsDelaySeconds</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>Integer</
 code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Since <strong>Camel 2.11</strong>, the delay seconds that the Amazon SQS message can be see by others. </p></td></tr></tbody></table>
-</div>
-
-<h4 id="BookComponentAppendix-MessageheaderssetbytheSQSconsumer">Message headers set by the SQS consumer</h4>
-<div class="confluenceTableSmall">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Type </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMD5OfBody</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The MD5 checksum of the Amazon SQS message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMessageId</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Amazon SQS message ID. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsReceiptHandle</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</
 code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>  The Amazon SQS message receipt handle. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsAttributes</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>Map&lt;String, String&gt;</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Amazon SQS message attributes. </p></td></tr></tbody></table>
-</div>
-
-<h4 id="BookComponentAppendix-AdvancedAmazonSQSconfiguration">Advanced AmazonSQS configuration</h4>
-<p>If your Camel Application is running behind a firewall or if you need to have more control over the AmazonSQS instance configuration, you can create your own instance:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-AWSCredentials awsCredentials = new BasicAWSCredentials(&quot;myAccessKey&quot;, &quot;mySecretKey&quot;);
+<h3 id="BookComponentAppendix-BatchConsumer">Batch Consumer</h3><p>This component implements the <a shape="rect" href="batch-consumer.html">Batch Consumer</a>.</p><p>This allows you for instance to know how many messages exists in this batch and for instance let the <a shape="rect" href="aggregator.html">Aggregator</a> aggregate this number of messages.</p><h3 id="BookComponentAppendix-Usage">Usage</h3><h4 id="BookComponentAppendix-MessageheaderssetbytheSQSproducer">Message headers set by the SQS producer</h4><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Type </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMD5OfBody</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluen
 ceTd"><p> The MD5 checksum of the Amazon SQS message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMessageId</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Amazon SQS message ID. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsDelaySeconds</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>Integer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Since <strong>Camel 2.11</strong>, the delay seconds that the Amazon SQS message can be see by others. </p></td></tr></tbody></table>
+<h4 id="BookComponentAppendix-MessageheaderssetbytheSQSconsumer">Message headers set by the SQS consumer</h4><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Type </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMD5OfBody</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The MD5 checksum of the Amazon SQS message. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsMessageId</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Amazon SQS message ID. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code
 >CamelAwsSqsReceiptHandle</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>String</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>  The Amazon SQS message receipt handle. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelAwsSqsAttributes</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>Map&lt;String, String&gt;</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Amazon SQS message attributes. </p></td></tr></tbody></table>
+<h4 id="BookComponentAppendix-AdvancedAmazonSQSconfiguration">Advanced AmazonSQS configuration</h4><p>If your Camel Application is running behind a firewall or if you need to have more control over the AmazonSQS instance configuration, you can create your own instance:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[AWSCredentials awsCredentials = new BasicAWSCredentials(&quot;myAccessKey&quot;, &quot;mySecretKey&quot;);
 
 ClientConfiguration clientConfiguration = new ClientConfiguration();
 clientConfiguration.setProxyHost(&quot;http://myProxyHost&quot;);
@@ -469,46 +431,24 @@ AmazonSQS client = new AmazonSQSClient(a
 
 registry.bind(&quot;client&quot;, client);
 ]]></script>
-</div></div>
-
-<p>and refer to it in your Camel aws-sqs component configuration:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;aws-sqs://MyQueue?amazonSQSClient=#client&amp;delay=5000&amp;maxMessagesPerPoll=5&quot;)
+</div></div><p>and refer to it in your Camel aws-sqs component configuration:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;aws-sqs://MyQueue?amazonSQSClient=#client&amp;delay=5000&amp;maxMessagesPerPoll=5&quot;)
 .to(&quot;mock:result&quot;);
 ]]></script>
-</div></div>
-
-<h3 id="BookComponentAppendix-Dependencies">Dependencies</h3>
-<p>Maven users will need to add the following dependency to their pom.xml.</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>pom.xml</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;dependency&gt;
+</div></div><h3 id="BookComponentAppendix-Dependencies">Dependencies</h3><p>Maven users will need to add the following dependency to their pom.xml.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>pom.xml</b></div><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-aws&lt;/artifactId&gt;
     &lt;version&gt;${camel-version}&lt;/version&gt;
 &lt;/dependency&gt;
 ]]></script>
-</div></div>
-
-<p>where <code>${camel-version</code>} must be replaced by the actual version of Camel (2.6 or higher).</p>
-
-<h3 id="BookComponentAppendix-JMS-styleSelectors">JMS-style Selectors </h3>
-<p>SQS does not allow selectors, but you can effectively achieve this by using the <a shape="rect" href="message-filter.html">Camel Filter EIP</a> and setting an appropriate <code>visibilityTimeout</code>. When SQS dispatches a message, it will wait up to the visibility timeout before it will try to dispatch the message to a different consumer unless a DeleteMessage is received. By default, Camel will always send the DeleteMessage at the end of the route, unless the route ended in failure. To achieve appropriate filtering and not send the DeleteMessage even on successful completion of the route, use a Filter:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-from(&quot;aws-sqs://MyQueue?amazonSQSClient=#client&amp;defaultVisibilityTimeout=5000&amp;deleteIfFiltered=false&quot;)
+</div></div><p>where <code>${camel-version</code>} must be replaced by the actual version of Camel (2.6 or higher).</p><h3 id="BookComponentAppendix-JMS-styleSelectors">JMS-style Selectors</h3><p>SQS does not allow selectors, but you can effectively achieve this by using the <a shape="rect" href="message-filter.html">Camel Filter EIP</a> and setting an appropriate <code>visibilityTimeout</code>. When SQS dispatches a message, it will wait up to the visibility timeout before it will try to dispatch the message to a different consumer unless a DeleteMessage is received. By default, Camel will always send the DeleteMessage at the end of the route, unless the route ended in failure. To achieve appropriate filtering and not send the DeleteMessage even on successful completion of the route, use a Filter:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[from(&quot;aws-sqs://MyQueue?amazonSQSClient=#client&amp;defaultVisibilityTimeout=5000&amp;deleteIfFiltered=false&quot;)
 .filter(&quot;${header.login} == true&quot;)
 .to(&quot;mock:result&quot;);
 ]]></script>
-</div></div>
-
-<p>In the above code, if an exchange doesn't have an appropriate header, it will not make it through the filter AND also not be deleted from the SQS queue. After 5000 miliseconds, the message will become visible to other consumers.</p>
-
-<h3 id="BookComponentAppendix-SeeAlso.2">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>
-<ul class="alternate"><li><a shape="rect" href="aws.html">AWS Component</a></li></ul>
+</div></div><p>In the above code, if an exchange doesn't have an appropriate header, it will not make it through the filter AND also not be deleted from the SQS queue. After 5000 miliseconds, the message will become visible to other consumers.</p><p></p><h3 id="BookComponentAppendix-SeeAlso.2">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><ul class="alternate"><li><a shape="rect" href="aws.html">AWS Component</a></li></ul>
 <h2 id="BookComponentAppendix-AtomComponent">Atom Component</h2>
 
 <p>The <strong>atom:</strong> component is used for polling Atom feeds.</p>
@@ -1941,11 +1881,11 @@ template.send(&quot;direct:alias-verify&
 <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>
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1387510481102 {padding: 0px;}
-div.rbtoc1387510481102 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1387510481102 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1388989206167 {padding: 0px;}
+div.rbtoc1388989206167 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1388989206167 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1387510481102">
+/*]]>*/</style><div class="toc-macro rbtoc1388989206167">
 <ul class="toc-indentation"><li><a shape="rect" href="#CXF-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#CXF-URIformat">URI format</a></li><li><a shape="rect" href="#CXF-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#CXF-Thedescriptionsofthedataformats">The descriptions of the dataformats</a>
@@ -2844,70 +2784,34 @@ cxfbean:serviceBeanRef
 ]]></script>
 </div></div>
 <p>That's it.  Once the route is started, the web service is ready for business.  A HTTP client can make a request and receive response.</p>
-<h2 id="BookComponentAppendix-CXFRSComponent">CXFRS Component</h2>
-
-    <div class="aui-message warning shadowed information-macro">
+<h2 id="BookComponentAppendix-CXFRSComponent">CXFRS Component</h2>    <div class="aui-message warning shadowed information-macro">
                             <span class="aui-icon icon-warning">Icon</span>
                 <div class="message-content">
-                            
-<p>When using CXF as a consumer, the <a shape="rect" href="cxf-bean-component.html">CXF Bean Component</a> allows you to factor out how message payloads are received from their processing as a RESTful or SOAP web service. This has the potential of using a multitude of transports to consume web services. The bean component's configuration is also simpler and provides the fastest method to implement web services using Camel and CXF.</p>
+                            <p>When using CXF as a consumer, the <a shape="rect" href="cxf-bean-component.html">CXF Bean Component</a> allows you to factor out how message payloads are received from their processing as a RESTful or SOAP web service. This has the potential of using a multitude of transports to consume web services. The bean component's configuration is also simpler and provides the fastest method to implement web services using Camel and CXF.</p>
                     </div>
     </div>
-
-
-<p>The <strong>cxfrs:</strong> component provides integration with <a shape="rect" class="external-link" href="http://incubator.apache.org/cxf/">Apache CXF</a> for connecting to JAX-RS services hosted in CXF.</p>
-
-<p>Maven users will need to add the following dependency to their pom.xml for this component:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;dependency&gt;
+<p>The <strong>cxfrs:</strong> component provides integration with <a shape="rect" class="external-link" href="http://incubator.apache.org/cxf/">Apache CXF</a> for connecting to JAX-RS services hosted in CXF.</p><p>Maven users will need to add the following dependency to their pom.xml for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
    &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
    &lt;artifactId&gt;camel-cxf&lt;/artifactId&gt;
    &lt;version&gt;x.x.x&lt;/version&gt;  &lt;!-- use the same version as your Camel core version --&gt;
 &lt;/dependency&gt;
 ]]></script>
-</div></div>
-
-<h3 id="BookComponentAppendix-URIformat.13">URI format</h3>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-cxfrs://address?options
+</div></div><h3 id="BookComponentAppendix-URIformat.13">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[cxfrs://address?options
 ]]></script>
-</div></div>
-<p>Where <strong>address</strong> represents the CXF endpoint's address</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-cxfrs:bean:rsEndpoint
+</div></div><p>Where <strong>address</strong> represents the CXF endpoint's address</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[cxfrs:bean:rsEndpoint
 ]]></script>
-</div></div>
-<p>Where <strong>rsEndpoint</strong> represents the spring bean's name which presents the CXFRS client or server</p>
-
-<p>For either style above, you can append options to the URI as follows:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-cxfrs:bean:cxfEndpoint?resourceClasses=org.apache.camel.rs.Example
+</div></div><p>Where <strong>rsEndpoint</strong> represents the spring bean's name which presents the CXFRS client or server</p><p>For either style above, you can append options to the URI as follows:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[cxfrs:bean:cxfEndpoint?resourceClasses=org.apache.camel.rs.Example
 ]]></script>
-</div></div>
-
-<h3 id="BookComponentAppendix-Options.9">Options</h3>
-<div class="confluenceTableSmall">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Name </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Example </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Required? </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> default value </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>resourceClasses</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The resource classes which you want to export as REST service. Multiple classes can be separated by comma. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>resourceClasses=org.apache.camel.rs.Example1,</code><br clear="none">
+</div></div><h3 id="BookComponentAppendix-Options.9">Options</h3><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Name </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Example </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Required? </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> default value </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>resourceClasses</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The resource classes which you want to export as REST service. Multiple classes can be separated by comma. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>resourceClasses=org.apache.camel.rs.Example1,</code><br clear="none">
 <code>org.apache.camel.rs.Exchange2</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>None</em> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>resourceClass</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Deprecated</strong>: Use <code>resourceClasses</code> The resource class which you want to export as REST service. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>resourceClass =org.apache.camel.rs.Example1</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>None</em> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>httpClientAPI</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>new to Camel 2.1</strong> If it is true, the CxfRsProducer will use the HttpClientAPI to invoke the se
 rvice <br clear="none" class="atl-forced-newline">
 If it is false, the CxfRsProducer will use the ProxyClientAPI to invoke the service </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> httpClientAPI=true </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>true</em> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> synchronous </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> New in 2.5, this option will let CxfRsConsumer decide to use sync or async API to do the underlying work. The default value is false which means it will try to use async API by default. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> synchronous=true </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> false </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> throwExceptionOnFailure </p></td><td colspan="1" rowspan="1" class="confluenc
 eTd"><p> New in 2.6, this option tells the CxfRsProducer to inspect return codes and will generate an Exception if the return code is larger than 207. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> throwExceptionOnFailure=true </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> true </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>maxClientCacheSize</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> New in 2.6, you can set a IN message header CamelDestinationOverrideUrl to dynamically override the target destination Web Service or REST Service defined in your routes.&#160; The implementation caches CXF clients or ClientFactoryBean in CxfProvider and CxfRsProvider.&#160; This option allows you to configure the maximum size of the cache. <br clear="none" class="atl-forced-newline"> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> maxClien
 tCacheSize=5 </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No <br clear="none" class="atl-forced-newline"> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> 10 </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>setDefaultBus</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> New in 2.9.0. Will set the default bus when CXF endpoint create a bus by itself </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>setDefaultBus=true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>bus</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> New in 2.9.0. A default bus created by CXF Bus Factory. Use <code>#</code> notation to reference a bus object from the registry. The referenced object must be an instance of <code
 >org.apache.cxf.Bus</code>. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>bus=#busName</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>None</em> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>bindingStyle</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>As of 2.11</strong>. Sets how requests and responses will be mapped to/from Camel. Two values are possible: </p>
 <ul class="alternate" type="square"><li><code>SimpleConsumer</code> =&gt; see the <a shape="rect" href="#BookComponentAppendix-ConsumingaRESTRequest-SimpleBindingStyle">Consuming a REST Request with the Simple Binding Style</a> below.</li><li><code>Default</code> =&gt; the default style. For consumers this passes on a <code>MessageContentsList</code> to the route, requiring low-level processing in the route.</li></ul>
 </td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>bindingStyle=SimpleConsumer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>Default</em> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>providers</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Since Camel 2.12.2</strong> Add custom JAX-RS providers to the list of providers. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> No </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>None</em> </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>schemaLocations</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Since Camel 2.12.2</strong> Sets the locations of the schemas which can be used to validate the incoming XML or JAXB-driven JSON. </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> NO </p
 ></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>None</em> </p></td></tr></tbody></table>
-</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="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF REST user guide</a> for more information.</p>
-
-<h3 id="BookComponentAppendix-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> for 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">
+<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="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF REST user guide</a> for more information.</p><h3 id="BookComponentAppendix-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> 
 for 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="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
 &lt;beans xmlns=&quot;http://www.springframework.org/schema/beans&quot;
        xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
@@ -2959,87 +2863,25 @@ You can find a Camel REST service route 
   
 &lt;/beans&gt;
 ]]></script>
-</div></div>
-
-<h3 id="BookComponentAppendix-ConsumingaRESTRequest-SimpleBindingStyle">Consuming a REST Request - Simple Binding Style</h3>
-
-<p><strong>Available as of Camel 2.11</strong></p>
-
-<p>The <code>Default</code> binding style is rather low-level, requiring the user to manually process the <code>MessageContentsList</code> object coming into the route. Thus, it tightly couples the route logic with the method signature and parameter indices of the JAX-RS operation. Somewhat inelegant, difficult and error-prone.</p>
-
-<p>In contrast, the <code>SimpleConsumer</code> binding style performs the following mappings, in order to <strong>make the request data more accessible</strong> to you within the Camel Message:</p>
-
-<ul><li>JAX-RS Parameters (@HeaderParam, @QueryParam, etc.) are injected as IN message headers. The header name matches the value of the annotation.</li><li>The request entity (POJO or other type) becomes the IN message body. If a single entity cannot be identified in the JAX-RS method signature, it falls back to the original <code>MessageContentsList</code>.</li><li>Binary <code>@Multipart</code> body parts become IN message attachments, supporting <code>DataHandler</code>, <code>InputStream</code>, <code>DataSource</code> and CXF's <code>Attachment</code> class.</li><li>Non-binary <code>@Multipart</code> body parts are mapped as IN message headers. The header name matches the Body Part name.</li></ul>
-
-
-<p>Additionally, the following rules apply to the <strong>Response mapping</strong>:</p>
-
-<ul><li>If the message body type is different to <code>javax.ws.rs.core.Response</code> (user-built response), a new <code>Response</code> is created and the message body is set as the entity (so long it's not null). The response status code is taken from the <code>Exchange.HTTP_RESPONSE_CODE</code> header, or defaults to 200 OK if not present.</li><li>If the message body type is equal to <code>javax.ws.rs.core.Response</code>, it means that the user has built a custom response, and therefore it is respected and it becomes the final response.</li><li>In all cases, Camel headers permitted by custom or default <code>HeaderFilterStrategy</code> are added to the HTTP response.</li></ul>
-
-
-<h4 id="BookComponentAppendix-EnablingtheSimpleBindingStyle">Enabling the Simple Binding Style</h4>
-
-<p>This binding style can be activated by setting the <code>bindingStyle</code> parameter in the consumer endpoint to value <code>SimpleConsumer</code>:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-  from(&quot;cxfrs:bean:rsServer?bindingStyle=SimpleConsumer&quot;)
+</div></div><h3 id="BookComponentAppendix-ConsumingaRESTRequest-SimpleBindingStyle">Consuming a REST Request - Simple Binding Style</h3><p><strong>Available as of Camel 2.11</strong></p><p>The <code>Default</code> binding style is rather low-level, requiring the user to manually process the <code>MessageContentsList</code> object coming into the route. Thus, it tightly couples the route logic with the method signature and parameter indices of the JAX-RS operation. Somewhat inelegant, difficult and error-prone.</p><p>In contrast, the <code>SimpleConsumer</code> binding style performs the following mappings, in order to <strong>make the request data more accessible</strong> to you within the Camel Message:</p><ul><li>JAX-RS Parameters (@HeaderParam, @QueryParam, etc.) are injected as IN message headers. The header name matches the value of the annotation.</li><li>The request entity (POJO or other type) becomes the IN message body. If a single entity cannot be identified in the JAX-RS 
 method signature, it falls back to the original <code>MessageContentsList</code>.</li><li>Binary <code>@Multipart</code> body parts become IN message attachments, supporting <code>DataHandler</code>, <code>InputStream</code>, <code>DataSource</code> and CXF's <code>Attachment</code> class.</li><li>Non-binary <code>@Multipart</code> body parts are mapped as IN message headers. The header name matches the Body Part name.</li></ul><p>Additionally, the following rules apply to the <strong>Response mapping</strong>:</p><ul><li>If the message body type is different to <code>javax.ws.rs.core.Response</code> (user-built response), a new <code>Response</code> is created and the message body is set as the entity (so long it's not null). The response status code is taken from the <code>Exchange.HTTP_RESPONSE_CODE</code> header, or defaults to 200 OK if not present.</li><li>If the message body type is equal to <code>javax.ws.rs.core.Response</code>, it means that the user has built a custom res
 ponse, and therefore it is respected and it becomes the final response.</li><li>In all cases, Camel headers permitted by custom or default <code>HeaderFilterStrategy</code> are added to the HTTP response.</li></ul><h4 id="BookComponentAppendix-EnablingtheSimpleBindingStyle">Enabling the Simple Binding Style</h4><p>This binding style can be activated by setting the <code>bindingStyle</code> parameter in the consumer endpoint to value <code>SimpleConsumer</code>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[  from(&quot;cxfrs:bean:rsServer?bindingStyle=SimpleConsumer&quot;)
     .to(&quot;log:TEST?showAll=true&quot;);
 ]]></script>
-</div></div>
-
-<h4 id="BookComponentAppendix-Examplesofrequestbindingwithdifferentmethodsignatures">Examples of request binding with different method signatures</h4>
-
-<p>Below is a list of method signatures along with the expected result from the Simple binding.</p>
-
-<p><strong><code>public Response doAction(BusinessObject request);</code></strong><br clear="none">
-Request payload is placed in IN message body, replacing the original MessageContentsList.</p>
-
-<p><strong><code>public Response doAction(BusinessObject request, @HeaderParam("abcd") String abcd, @QueryParam("defg") String defg);</code></strong><br clear="none">
-Request payload placed in IN message body, replacing the original MessageContentsList. Both request params mapped as IN message headers with names abcd and defg.</p>
-
-<p><strong><code>public Response doAction(@HeaderParam("abcd") String abcd, @QueryParam("defg") String defg);</code></strong><br clear="none">
-Both request params mapped as IN message headers with names abcd and defg. The original MessageContentsList is preserved, even though it only contains the 2 parameters.</p>
-
-<p><strong><code>public Response doAction(@Multipart(value="body1") BusinessObject request, @Multipart(value="body2") BusinessObject request2);</code></strong><br clear="none">
-The first parameter is transferred as a header with name body1, and the second one is mapped as header body2. The original MessageContentsList is preserved as the IN message body.</p>
-
-<p><strong><code>public Response doAction(InputStream abcd);</code></strong><br clear="none">
-The InputStream is unwrapped from the MessageContentsList and preserved as the IN message body. </p>
-
-<p><strong><code>public Response doAction(DataHandler abcd);</code></strong><br clear="none">
-The DataHandler is unwrapped from the MessageContentsList and preserved as the IN message body. </p>
-
-<h4 id="BookComponentAppendix-MoreexamplesoftheSimpleBindingStyle">More examples of the Simple Binding Style</h4>
-
-<p>Given a JAX-RS resource class with this method:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-    @POST @Path(&quot;/customers/{type}&quot;)
+</div></div><h4 id="BookComponentAppendix-Examplesofrequestbindingwithdifferentmethodsignatures">Examples of request binding with different method signatures</h4><p>Below is a list of method signatures along with the expected result from the Simple binding.</p><p><strong><code>public Response doAction(BusinessObject request);</code></strong><br clear="none"> Request payload is placed in IN message body, replacing the original MessageContentsList.</p><p><strong><code>public Response doAction(BusinessObject request, @HeaderParam("abcd") String abcd, @QueryParam("defg") String defg);</code></strong><br clear="none"> Request payload placed in IN message body, replacing the original MessageContentsList. Both request params mapped as IN message headers with names abcd and defg.</p><p><strong><code>public Response doAction(@HeaderParam("abcd") String abcd, @QueryParam("defg") String defg);</code></strong><br clear="none"> Both request params mapped as IN message headers with names abcd and
  defg. The original MessageContentsList is preserved, even though it only contains the 2 parameters.</p><p><strong><code>public Response doAction(@Multipart(value="body1") BusinessObject request, @Multipart(value="body2") BusinessObject request2);</code></strong><br clear="none"> The first parameter is transferred as a header with name body1, and the second one is mapped as header body2. The original MessageContentsList is preserved as the IN message body.</p><p><strong><code>public Response doAction(InputStream abcd);</code></strong><br clear="none"> The InputStream is unwrapped from the MessageContentsList and preserved as the IN message body.</p><p><strong><code>public Response doAction(DataHandler abcd);</code></strong><br clear="none"> The DataHandler is unwrapped from the MessageContentsList and preserved as the IN message body.</p><h4 id="BookComponentAppendix-MoreexamplesoftheSimpleBindingStyle">More examples of the Simple Binding Style</h4><p>Given a JAX-RS resource class w
 ith this method:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[    @POST @Path(&quot;/customers/{type}&quot;)
     public Response newCustomer(Customer customer, @PathParam(&quot;type&quot;) String type, @QueryParam(&quot;active&quot;) @DefaultValue(&quot;true&quot;) boolean active) {
         return null;
     }
 ]]></script>
-</div></div>
-
-<p>Serviced by the following route:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-    from(&quot;cxfrs:bean:rsServer?bindingStyle=SimpleConsumer&quot;)
+</div></div><p>Serviced by the following route:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[    from(&quot;cxfrs:bean:rsServer?bindingStyle=SimpleConsumer&quot;)
         .recipientList(simple(&quot;direct:${header.operationName}&quot;));
 
     from(&quot;direct:newCustomer&quot;)
         .log(&quot;Request: type=${header.type}, active=${header.active}, customerData=${body}&quot;);
 ]]></script>
-</div></div>
-
-<p>The following HTTP request with XML payload (given that the Customer DTO is JAXB-annotated):</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-POST /customers/gold?active=true
+</div></div><p>The following HTTP request with XML payload (given that the Customer DTO is JAXB-annotated):</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[POST /customers/gold?active=true
 
 Payload:
 &lt;Customer&gt;
@@ -3048,26 +2890,10 @@ Payload:
   &lt;project&gt;Apache Camel&lt;/project&gt;
 &lt;/Customer&gt;
 ]]></script>
-</div></div>
-
-<p>Will print the message:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-Request: type=gold, active=true, customerData=&lt;Customer.toString() representation&gt;
+</div></div><p>Will print the message:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[Request: type=gold, active=true, customerData=&lt;Customer.toString() representation&gt;
 ]]></script>
-</div></div>
-
-<p>For more examples on how to process requests and write responses can be found <a shape="rect" class="external-link" href="https://svn.apache.org/repos/asf/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/jaxrs/simplebinding/">here</a>.</p>
-
-<h3 id="BookComponentAppendix-ConsumingaRESTRequest-DefaultBindingStyle">Consuming a REST Request - Default Binding Style</h3>
-
-<p><a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF JAXRS front end</a> implements the <a shape="rect" class="external-link" href="https://jsr311.dev.java.net/" rel="nofollow">JAXRS(JSR311) API</a>, so we can export the resources classes as a REST service. And we leverage the <a shape="rect" class="external-link" href="http://cwiki.apache.org/confluence/display/CXF20DOC/Invokers">CXF Invoker API</a> to turn a REST request into a normal Java object method invocation.<br clear="none">
-Unlike the <code>camel-restlet</code>, you don't need to specify the URI template within your restlet endpoint, CXF take care of the REST request URI to resource class method mapping according to the JSR311 specification. All you need to do in Camel is delegate this method request to a right processor or endpoint.</p>
-
-<p>Here is an example of a CXFRS route...</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>For more examples on how to process requests and write responses can be found <a shape="rect" class="external-link" href="https://svn.apache.org/repos/asf/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/jaxrs/simplebinding/">here</a>.</p><h3 id="BookComponentAppendix-ConsumingaRESTRequest-DefaultBindingStyle">Consuming a REST Request - Default Binding Style</h3><p><a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF JAXRS front end</a> implements the <a shape="rect" class="external-link" href="https://jsr311.dev.java.net/" rel="nofollow">JAXRS(JSR311) API</a>, so we can export the resources classes as a REST service. And we leverage the <a shape="rect" class="external-link" href="http://cwiki.apache.org/confluence/display/CXF20DOC/Invokers">CXF Invoker API</a> to turn a REST request into a normal Java object method invocation.<br clear="none"> Unlike the <code>camel-restlet</code>, you don't need t
 o specify the URI template within your restlet endpoint, CXF take care of the REST request URI to resource class method mapping according to the JSR311 specification. All you need to do in Camel is delegate this method request to a right processor or endpoint.</p><p>Here is an example of a CXFRS route...</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 private static final String CXF_RS_ENDPOINT_URI = &quot;cxfrs://http://localhost:&quot; + CXT + &quot;/rest?resourceClasses=org.apache.camel.component.cxf.jaxrs.testbean.CustomerServiceResource&quot;;
 
@@ -3136,20 +2962,13 @@ protected RouteBuilder createRouteBuilde
     };
 }
 ]]></script>
-</div></div>
-
-<p>And the corresponding resource class used to configure the endpoint...</p>
-
-    <div class="aui-message hint shadowed information-macro">
+</div></div><p>And the corresponding resource class used to configure the endpoint...</p>    <div class="aui-message hint shadowed information-macro">
                     <p class="title">note about the resource class</p>
                             <span class="aui-icon icon-hint">Icon</span>
                 <div class="message-content">
-                            
-<p>This class is used to configure the JAXRS properties ONLY.  The methods will NOT be executed during the routing of messages to the endpoint, the route itself is responsible for ALL processing instead.</p>
+                            <p>This class is used to configure the JAXRS properties ONLY. The methods will NOT be executed during the routing of messages to the endpoint, the route itself is responsible for ALL processing instead.</p>
                     </div>
     </div>
-
-
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 @Path(&quot;/customerservice/&quot;)
@@ -3164,16 +2983,7 @@ public interface CustomerServiceResource
     Response updateCustomer(Customer customer);
 }
 ]]></script>
-</div></div>
-
-<h3 id="BookComponentAppendix-HowtoinvoketheRESTservicethroughcamel-cxfrsproducer">How to invoke the REST service through camel-cxfrs producer</h3>
-
-<p><a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF JAXRS front end</a> implements <a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html#JAX-RS-ProxybasedAPI">a proxy based client API</a>, with this API you can invoke the remote REST service through a proxy.<br clear="none">
-<code>camel-cxfrs</code> producer is based on this <a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html#JAX-RS-ProxybasedAPI">proxy API</a>.<br clear="none">
-So, you just need to specify the operation name in the message header and prepare the parameter in the message body, camel-cxfrs producer will generate right REST request for you.</p>
-
-<p>Here is an example</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="BookComponentAppendix-HowtoinvoketheRESTservicethroughcamel-cxfrsproducer">How to invoke the REST service through camel-cxfrs producer</h3><p><a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF JAXRS front end</a> implements <a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html#JAX-RS-ProxybasedAPI">a proxy based client API</a>, with this API you can invoke the remote REST service through a proxy.<br clear="none"> <code>camel-cxfrs</code> producer is based on this <a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html#JAX-RS-ProxybasedAPI">proxy API</a>.<br clear="none"> So, you just need to specify the operation name in the message header and prepare the parameter in the message body, camel-cxfrs producer will generate right REST request for you.</p><p>Here is an example</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent p
 anelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 Exchange exchange = template.send(&quot;direct://proxy&quot;, new Processor() {
     public void process(Exchange exchange) throws Exception {
@@ -3201,10 +3011,7 @@ assertEquals(&quot;Get a wrong customer 
 assertEquals(&quot;Get a wrong response code&quot;, 200, exchange.getOut().getHeader(Exchange.HTTP_RESPONSE_CODE));
 assertEquals(&quot;Get a wrong header value&quot;, &quot;value&quot;, exchange.getOut().getHeader(&quot;key&quot;));
 ]]></script>
-</div></div>
-<p><a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF JAXRS front end</a> also provides <a shape="rect" href="http://cxf.apache.org/docs/jax-rs.html#JAX-RS-HTTPcentricclients">a http centric client API</a>, You can also invoke this API from <code>camel-cxfrs</code> producer. You need to specify the HTTP_PATH and Http method and let the the producer know to use the http centric client by using the URI option <strong>httpClientAPI</strong> or set the message header with CxfConstants.CAMEL_CXF_RS_USING_HTTP_API. You can turn the response object to the type class that you specify with CxfConstants.CAMEL_CXF_RS_RESPONSE_CLASS.</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p><a shape="rect" class="external-link" href="http://cwiki.apache.org/CXF20DOC/jax-rs.html">CXF JAXRS front end</a> also provides <a shape="rect" href="http://cxf.apache.org/docs/jax-rs.html#JAX-RS-HTTPcentricclients">a http centric client API</a>, You can also invoke this API from <code>camel-cxfrs</code> producer. You need to specify the HTTP_PATH and Http method and let the the producer know to use the http centric client by using the URI option <strong>httpClientAPI</strong> or set the message header with CxfConstants.CAMEL_CXF_RS_USING_HTTP_API. You can turn the response object to the type class that you specify with CxfConstants.CAMEL_CXF_RS_RESPONSE_CLASS.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 Exchange exchange = template.send(&quot;direct://http&quot;, new Processor() {
     public void process(Exchange exchange) throws Exception {
@@ -3235,14 +3042,11 @@ assertEquals(&quot;Get a wrong customer 
 assertEquals(&quot;Get a wrong response code&quot;, 200, exchange.getOut().getHeader(Exchange.HTTP_RESPONSE_CODE));
 assertEquals(&quot;Get a wrong header value&quot;, &quot;value&quot;, exchange.getOut().getHeader(&quot;key&quot;));
 ]]></script>
-</div></div>
-<p>From Camel 2.1, we also support to specify the query parameters from cxfrs URI for the CXFRS http centric client.<br clear="none">
-</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>From Camel 2.1, we also support to specify the query parameters from cxfrs URI for the CXFRS http centric client.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 Exchange exchange = template.send(&quot;cxfrs://http://localhost:&quot; + getPort2() + &quot;/&quot; + getClass().getSimpleName() + &quot;/testQuery?httpClientAPI=true&amp;q1=12&amp;q2=13&quot;
 ]]></script>
-</div></div>To support the Dynamical routing, you can override the URI's query parameters by using the CxfConstants.CAMEL_CXF_RS_QUERY_MAP header to set the parameter map for it.
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>To support the Dynamical routing, you can override the URI's query parameters by using the CxfConstants.CAMEL_CXF_RS_QUERY_MAP header to set the parameter map for it.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 Map&lt;String, String&gt; queryMap = new LinkedHashMap&lt;String, String&gt;();                    
 queryMap.put(&quot;q1&quot;, &quot;new&quot;);
@@ -15578,9 +15382,8 @@ public static class FilterBean {
 <h3 id="BookComponentAppendix-URIformat.60">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[seda:someName[?options]
 ]]></script>
-</div></div><p>Where <strong>someName</strong> can be any string that uniquely identifies the endpoint within the current <a shape="rect" href="camelcontext.html">CamelContext</a>.</p><p>You can append query options to the URI in the following format: <code>?option=value&amp;option=value&amp;&#8230;</code></p><h3 id="BookComponentAppendix-Options.44">Options</h3><div class="confluenceTableSmall">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Name </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Since </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Default </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>size</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The maximum capacity of the SEDA queue (i.e., the number of messages it can hold). The default value in Camel 2.2 or older is <code>1000</code>. From Camel 2.3 onwards, the size is unbounded by default. <strong>Notice:</strong> Mind if you use this option, then its the first endpoint being created with the queue name, that determines the size. To make sure all endpoints use same size, then configu
 re the size option on all of them, or the first endpoint being created. From <strong>Camel 2.11</strong> onwards, a validation is taken place to ensure if using mixed queue sizes for the same queue name, Camel would detect this and fail creating the endpoint. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>concurrentConsumers</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>1</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Number of concurrent threads processing exchanges. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>waitForTaskToComplete</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>IfReplyExpected</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Option to specify whether the caller should wait f
 or the async task to complete or not before continuing. The following three options are supported: <code>Always</code>, <code>Never</code> or <code>IfReplyExpected</code>. The first two values are self-explanatory. The last value, <code>IfReplyExpected</code>, will only wait if the message is <a shape="rect" href="request-reply.html" title="Request Reply">Request Reply</a> based. The default option is <code>IfReplyExpected</code>. See more information about <a shape="rect" href="async.html" title="Async">Async</a> messaging. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>timeout</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>30000</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Timeout (in milliseconds) before a SEDA producer will stop waiting for an asynchronous task to complete. See <code>waitForTaskToComplete</code> and <a shape="rect" 
 href="async.html" title="Async">Async</a> for more details. In <strong>Camel 2.2</strong> you can now disable timeout by using 0 or a negative value. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>multipleConsumers</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.2</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Specifies whether multiple consumers are allowed. If enabled, you can use <a shape="rect" href="seda.html" title="SEDA">SEDA</a> for <a shape="rect" class="external-link" href="http://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern" rel="nofollow">Publish-Subscribe</a> messaging. That is, you can send a message to the SEDA queue and have each consumer receive a copy of the message. When enabled, this option should be specified on every consumer endpoint. </p></td></tr><tr><td colspan="1" rowspan="1" class=
 "confluenceTd"><p> <code>limitConcurrentConsumers</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.3</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Whether to limit the number of <code>concurrentConsumers</code> to the maximum of <code>500</code>. By default, an exception will be thrown if a SEDA endpoint is configured with a greater number. You can disable that check by turning this option off. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>blockWhenFull</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.9</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Whether a thread that sends messages to a full SEDA queue will block until the queue's capacity is no longer exhausted.  By default, an exce
 ption will be thrown stating that the queue is full. By enabling this option, the calling thread will instead block and wait until the message can be accepted. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>queueSize</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.9</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Component only:</strong> The maximum default size (capacity of the number of messages it can hold) of the SEDA queue. This option is used if <code>size</code> is not in use. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>pollTimeout</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.9.3</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>1000</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <em>Consumer only</em> &#8
 211; The timeout used when polling. When a timeout occurs, the consumer can check whether it is allowed to continue running. Setting a lower value allows the consumer to react more quickly upon shutdown. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>purgeWhenStopping</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.11.1</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Whether to purge the task queue when stopping the consumer/route. This allows to stop faster, as any pending messages on the queue is discarded. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>queue</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.12.0</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> null </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Define the q
 ueue instance which will be used by seda endpoint </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>queueFactory</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.12.0</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> null </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Define the QueueFactory which could create the queue for the seda endpoint </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>failIfNoConsumers</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <strong>2.12.0</strong> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> false </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Whether the producer should fail by throwing an exception, when sending to a SEDA queue with no active consumers. </p></td></tr></tbody></table>
-</div><h3 id="BookComponentAppendix-ChoosingBlockingQueueimplementation">Choosing BlockingQueue implementation</h3><p><strong>Available as of Camel 2.12</strong></p><p>By default, the SEDA component always intantiates LinkedBlockingQueue, but you can use different implementation, you can reference your own BlockingQueue implementation, in this case the size option is not used</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">

[... 6 lines stripped ...]