You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bu...@apache.org on 2016/01/31 03:24:33 UTC

svn commit: r979059 [1/3] - in /websites/production/camel/content: ./ 2016/01/30/ cache/

Author: buildbot
Date: Sun Jan 31 02:24:33 2016
New Revision: 979059

Log:
Production update by buildbot for camel

Added:
    websites/production/camel/content/2016/01/30/
    websites/production/camel/content/2016/01/30/cve-2015-5344-apache-camel-medium-disclosure-vulnerability.html
    websites/production/camel/content/cache/main.pageCache   (with props)
Modified:
    websites/production/camel/content/book-component-appendix.html
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/book-pattern-appendix.html
    websites/production/camel/content/book-tutorials.html
    websites/production/camel/content/camel-2170-release.html
    websites/production/camel/content/dead-letter-channel.html
    websites/production/camel/content/geocoder.html
    websites/production/camel/content/index.html
    websites/production/camel/content/message-history.html
    websites/production/camel/content/news.html
    websites/production/camel/content/tools.html

Added: websites/production/camel/content/2016/01/30/cve-2015-5344-apache-camel-medium-disclosure-vulnerability.html
==============================================================================
--- websites/production/camel/content/2016/01/30/cve-2015-5344-apache-camel-medium-disclosure-vulnerability.html (added)
+++ websites/production/camel/content/2016/01/30/cve-2015-5344-apache-camel-medium-disclosure-vulnerability.html Sun Jan 31 02:24:33 2016
@@ -0,0 +1,147 @@
+<!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]-->
+
+
+
+    <title>
+    Apache Camel: CVE-2015-5344 - Apache Camel medium disclosure vulnerability
+    </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;2016&nbsp;&gt;&nbsp;01&nbsp;&gt;&nbsp;30&nbsp;&gt;&nbsp;<a href="cve-2015-5344-apache-camel-medium-disclosure-vulnerability.html">CVE-2015-5344 - Apache Camel medium disclosure vulnerability</a>
+          </div>
+          <!-- Quicklinks -->
+<div id="site-quicklinks"><p><a shape="rect" href="download.html">Download</a> | <a shape="rect" href="javadoc.html">JavaDoc</a> | <a shape="rect" href="source.html">Source</a> | <a shape="rect" href="discussion-forums.html">Forums</a> | <a shape="rect" href="support.html">Support</a></p></div>
+          <!-- Quicklinks -->
+        </div>
+
+	<table border="0">
+	<tbody>
+        <tr>
+        <td valign="top" width="100%">
+<div class="wiki-content maincontent"><p>Apache Camel's XStream usage is vulnerable to Remote Code Execution attacks</p><p>Apache Camel's camel-xstream component is vulnerable to Java object de-serialisation vulnerability.<br clear="none">Such as de-serializing untrusted data can lead to security flaws as demonstrated in various similar reports about Java de-serialization issues.</p><p>Please study this security vulnerability carefully!<br clear="none">CVE-2015-5344 - [1]</p><p>You can download the fixed Apache Camel 2.15.x and 2.16.x version from the Apache mirrors [2] or from the Central Maven repository.</p><p>[1] <a shape="rect" class="external-link" href="http://camel.apache.org/security-advisories.data/CVE-2015-5344.txt.asc?version=1&amp;modificationDate=1454056803464&amp;api=v2">http://camel.apache.org/security-advisories.data/CVE-2015-5344.txt.asc?version=1&amp;modificationDate=1454056803464&amp;api=v2</a><br clear="none">[2] <a shape="rect" class="external-link" href="http:
 //camel.apache.org/download">http://camel.apache.org/download</a></p><p>&#160;</p><p>On behalf of the Camel PMC,<br clear="none">Claus Ibsen</p></div>
+        </td>
+        <td valign="top">
+          <div class="navigation">
+            <div class="navigation_top">
+                <!-- NavigationBar -->
+<div class="navigation_bottom" id="navigation_bottom"><h3 id="Navigation-Overview"><a shape="rect" href="overview.html">Overview</a></h3><ul class="alternate"><li><a shape="rect" href="index.html">Home</a></li><li><a shape="rect" href="download.html">Download</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li><li><a shape="rect" href="faq.html">FAQ</a></li></ul><h3 id="Navigation-Documentation"><a shape="rect" href="documentation.html">Documentation</a></h3><ul class="alternate"><li><a shape="rect" href="user-guide.html">User Guide</a></li><li><a shape="rect" href="manual.html">Manual</a></li><li><a shape="rect" href="books.html">Books</a></li><li><a shape="rect" href="tutorials.html">Tutorials</a></li><li><a shape="rect" href="examples.html">Examples</a></li><li><a shape="rect" href="cookbook.html">Cookbook</a></li><li><a shape="rect" href="architecture.html">Architecture</a></li><li><a shape="rect" href="enterprise-integration-patterns.html">Enterprise
  Integration Patterns</a></li><li><a shape="rect" href="dsl.html">DSL</a></li><li><a shape="rect" href="components.html">Components</a></li><li><a shape="rect" href="data-format.html">Data Format</a></li><li><a shape="rect" href="languages.html">Languages</a></li><li><a shape="rect" href="security.html">Security</a></li><li><a shape="rect" href="security-advisories.html">Security Advisories</a></li></ul><h3 id="Navigation-Search">Search</h3><form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
+  <div>
+    <input type="hidden" name="cx" value="007878419884033443453:m5nhvy4hmyq">
+    <input type="hidden" name="ie" value="UTF-8">
+    <input type="text" name="q" size="21">
+    <input type="submit" name="sa" value="Search">
+  </div>
+</form>
+<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&amp;lang=en"></script><h3 id="Navigation-Community"><a shape="rect" href="community.html">Community</a></h3><ul class="alternate"><li><a shape="rect" href="support.html">Support</a></li><li><a shape="rect" href="contributing.html">Contributing</a></li><li><a shape="rect" href="discussion-forums.html">Discussion Forums</a></li><li><a shape="rect" href="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect" href="user-stories.html">User Stories</a></li><li><a shape="rect" href="news.html">News</a></li><li><a shape="rect" href="articles.html">Articles</a></li><li><a shape="rect" href="site.html">Site</a></li><li><a shape="rect" href="team.html">Team</a></li><li><a shape="rect" class="external-link" href="http://camel-extra.googlecode.com/" rel="nofollow">Camel Extra</a></li></ul><h3 id="Navigation-Developers"><a shape="rect" href="developers.html">Developers</a></h3><ul class="alternate"
 ><li><a shape="rect" href="developers.html">Developer Guide</a></li><li><a shape="rect" href="source.html">Source</a></li><li><a shape="rect" href="building.html">Building</a></li><li><a shape="rect" href="javadoc.html">JavaDoc</a></li><li><a shape="rect" href="irc-room.html">IRC Room</a></li></ul><h3 id="Navigation-ApacheSoftwareFoundation">Apache Software Foundation</h3><ul class="alternate"><li><a shape="rect" class="external-link" href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/security/">Security</a></li></ul></div>
+                <!-- NavigationBar -->
+            </div>
+          </div>
+        </td>
+        </tr>
+	</tbody>
+        </table>
+
+
+        <div class="bottom_red_bar"></div>
+      </div>
+    </div>
+  </div>
+</div>
+<div class="black_box">
+<div class="footer">
+  <div class="footer_l">
+    <div class="footer_r">
+      <div>
+        <a href="$base/privacy-policy.html">Privacy Policy</a> -
+        (<a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=61338263">edit page</a>)
+   	 (<a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=61338263&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 private@camel.apache.org -->
+<script type="text/javascript">
+
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', 'UA-25976253-1']);
+  _gaq.push(['_trackPageview']);
+
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+  })();
+
+</script>
+
+</body>
+</html>
+
+

Modified: websites/production/camel/content/book-component-appendix.html
==============================================================================
--- websites/production/camel/content/book-component-appendix.html (original)
+++ websites/production/camel/content/book-component-appendix.html Sun Jan 31 02:24:33 2016
@@ -1016,11 +1016,11 @@ template.send(&quot;direct:alias-verify&
 ]]></script>
 </div></div><p></p><h3 id="BookComponentAppendix-SeeAlso.8">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><li><a shape="rect" href="crypto.html">Crypto</a> Crypto is also available as a <a shape="rect" href="data-format.html">Data Format</a></li></ul> <h2 id="BookComponentAppendix-CXFComponent">CXF Component</h2><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><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 cons
 ume 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><div class="confluence-information-macro confluence-information-macro-tip"><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using CXF in streaming modes (see DataFormat option), then also read about <a shape="rect" href="stream-caching.html">Stream caching</a>.</p></div></div><p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1454134978178 {padding: 0px;}
-div.rbtoc1454134978178 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1454134978178 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1454206838858 {padding: 0px;}
+div.rbtoc1454206838858 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1454206838858 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1454134978178">
+/*]]>*/</style></p><div class="toc-macro rbtoc1454206838858">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookComponentAppendix-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookComponentAppendix-URIformat">URI format</a></li><li><a shape="rect" href="#BookComponentAppendix-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookComponentAppendix-Thedescriptionsofthedataformats">The descriptions of the dataformats</a>

Modified: websites/production/camel/content/book-in-one-page.html
==============================================================================
--- websites/production/camel/content/book-in-one-page.html (original)
+++ websites/production/camel/content/book-in-one-page.html Sun Jan 31 02:24:33 2016
@@ -3729,11 +3729,11 @@ The tutorial has been designed in two pa
 While not actual tutorials you might find working through the source of the various <a shape="rect" href="examples.html">Examples</a> useful.</li></ul>
 
 <h2 id="BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</h2><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Thanks</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This tutorial was kindly donated to Apache Camel by Martin Gilday.</p></div></div><h2 id="BookInOnePage-Preface">Preface</h2><p>This tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a <a shape="rect" class="external-link" href="http://www.springramework.org" rel="nofollow">Spring</a> service. The route works in a synchronous fashion returning a response to the client.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1454134867146 {padding: 0px;}
-div.rbtoc1454134867146 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1454134867146 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1454206780836 {padding: 0px;}
+div.rbtoc1454206780836 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1454206780836 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1454134867146">
+/*]]>*/</style></p><div class="toc-macro rbtoc1454206780836">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#BookInOnePage-Preface">Preface</a></li><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-About">About</a></li><li><a shape="rect" href="#BookInOnePage-CreatetheCamelProject">Create the Camel Project</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul>
 </li><li><a shape="rect" href="#BookInOnePage-WritingtheServer">Writing the Server</a>
@@ -5838,11 +5838,11 @@ So we completed the last piece in the pi
 <p>This example has been removed from <strong>Camel 2.9</strong> onwards. Apache Axis 1.4 is a very old and unsupported framework. We encourage users to use <a shape="rect" href="cxf.html">CXF</a> instead of Axis.</p></div></div>
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1454134867909 {padding: 0px;}
-div.rbtoc1454134867909 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1454134867909 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1454206782266 {padding: 0px;}
+div.rbtoc1454206782266 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1454206782266 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1454134867909">
+/*]]>*/</style><div class="toc-macro rbtoc1454206782266">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-Introduction">Introduction</a></li><li><a shape="rect" href="#BookInOnePage-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Maven2">Maven 2</a></li><li><a shape="rect" href="#BookInOnePage-wsdl">wsdl</a></li><li><a shape="rect" href="#BookInOnePage-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#BookInOnePage-RunningtheExample">Running the Example</a></li></ul>
@@ -12186,7 +12186,7 @@ RouteBuilder builder = new RouteBuilder(
     errorHandler(deadLetterChannel(&quot;jms:queue:dead&quot;)
        .useOriginalMessage().maximumRedeliveries(5).redeliverDelay(5000);
 ]]></script>
-</div></div><p>Then the messages routed to the <code>jms:queue:dead</code> is the original input. If we want to manually retry we can move the JMS message from the failed to the input queue, with no problem as the message is the same as the original we received.</p><h3 id="BookInOnePage-OnRedelivery">OnRedelivery</h3><p>When <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> is doing redeliver its possible to configure a <a shape="rect" href="processor.html">Processor</a> that is executed just <strong>before</strong> every redelivery attempt. This can be used for the situations where you need to alter the message before its redelivered. See below for sample.</p><div class="confluence-information-macro confluence-information-macro-tip"><p class="title">onException and onRedeliver</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>We also support for per <a shape=
 "rect" href="exception-clause.html"><strong>onException</strong></a> to set a <strong>onRedeliver</strong>. That means you can do special on redelivery for different exceptions, as opposed to onRedelivery set on <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> can be viewed as a global scope.</p></div></div><h3 id="BookInOnePage-Redeliverydefaultvalues">Redelivery default values</h3><p>Redelivery is disabled by default.</p><p>The default redeliver policy will use the following values:</p><ul><li>maximumRedeliveries=0</li><li>redeliverDelay=1000L (1 second)</li><li>maximumRedeliveryDelay = 60 * 1000L (60 seconds)</li><li>And the exponential backoff and collision avoidance is turned off.</li><li>The retriesExhaustedLogLevel are set to LoggingLevel.ERROR</li><li>The retryAttemptedLogLevel are set to LoggingLevel.DEBUG</li><li>Stack traces is logged for exhausted messages from Camel 2.2 onwards.</li><li>Handled exceptions is not logged from Camel 2.3 onwards</li><
 li>logExhaustedMessageHistory is true for default error handler, and false for dead letter channel.</li></ul><p>The maximum redeliver delay ensures that a delay is never longer than the value, default 1 minute. This can happen if you turn on the exponential backoff.</p><p>The maximum redeliveries is the number of <strong>re</strong> delivery attempts. By default Camel will try to process the exchange 1 + 5 times. 1 time for the normal attempt and then 5 attempts as redeliveries.<br clear="none"> Setting the maximumRedeliveries to a negative value such as -1 will then always redelivery (unlimited).<br clear="none"> Setting the maximumRedeliveries to 0 will disable any re delivery attempt.</p><p>Camel will log delivery failures at the DEBUG logging level by default. You can change this by specifying retriesExhaustedLogLevel and/or retryAttemptedLogLevel. See <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/camel/trunk/camel-core/src/test/java/org/apache/came
 l/builder/ExceptionBuilderWithRetryLoggingLevelSetTest.java">ExceptionBuilderWithRetryLoggingLevelSetTest</a> for an example.</p><p>You can turn logging of stack traces on/off. If turned off Camel will still log the redelivery attempt. Its just much less verbose.</p><h4 id="BookInOnePage-RedeliverDelayPattern">Redeliver Delay Pattern</h4><p>Delay pattern is used as a single option to set a range pattern for delays. If used then the following options does not apply: (delay, backOffMultiplier, useExponentialBackOff, useCollisionAvoidance, maximumRedeliveryDelay).</p><p>The idea is to set groups of ranges using the following syntax: <code>limit:delay;limit 2:delay 2;limit 3:delay 3;...;limit N:delay N</code></p><p>Each group has two values separated with colon</p><ul class="alternate"><li>limit = upper limit</li><li>delay = delay in millis<br clear="none"> And the groups is again separated with semi colon.<br clear="none"> The rule of thumb is that the next groups should have a higher 
 limit than the previous group.</li></ul><p>Lets clarify this with an example:<br clear="none"> <code>delayPattern=5:1000;10:5000;20:20000</code></p><p>That gives us 3 groups:</p><ul class="alternate"><li>5:1000</li><li>10:5000</li><li>20:20000</li></ul><p>Resulting in these delays for redelivery attempt:</p><ul class="alternate"><li>Redelivery attempt number 1..4 = 0 millis (as the first group start with 5)</li><li>Redelivery attempt number 5..9 = 1000 millis (the first group)</li><li>Redelivery attempt number 10..19 = 5000 millis (the second group)</li><li>Redelivery attempt number 20.. = 20000 millis (the last group)</li></ul><p>Note: The first redelivery attempt is 1, so the first group should start with 1 or higher.</p><p>You can start a group with limit 1 to eg have a starting delay: <code>delayPattern=1:1000;5:5000</code></p><ul class="alternate"><li>Redelivery attempt number 1..4 = 1000 millis (the first group)</li><li>Redelivery attempt number 5.. = 5000 millis (the last gro
 up)</li></ul><p>There is no requirement that the next delay should be higher than the previous. You can use any delay value you like. For example with <code>delayPattern=1:5000;3:1000</code> we start with 5 sec delay and then later reduce that to 1 second.</p><h3 id="BookInOnePage-Redeliveryheader">Redelivery header</h3><p>When a message is redelivered the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/camel-core/apidocs/org/apache/camel/processor/DeadLetterChannel.html">DeadLetterChannel</a> will append a customizable header to the message to indicate how many times its been redelivered. <br clear="none"> Before Camel 2.6: The header is <strong>CamelRedeliveryCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_COUNTER</code>.<br clear="none"> Starting with 2.6: The header <strong>CamelRedeliveryMaxCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_MAX_COUNTER</code>, contains the maximum redelivery setting. This 
 header is absent if you use <code>retryWhile</code> or have unlimited maximum redelivery configured.</p><p>And a boolean flag whether it is being redelivered or not (first attempt)<br clear="none"> The header <strong>CamelRedelivered</strong> contains a boolean if the message is redelivered or not, which is also defined on the <code>Exchange.REDELIVERED</code>.</p><p>Dynamically calculated delay from the exchange<br clear="none"> In Camel 2.9 and 2.8.2: The header is <strong>CamelRedeliveryDelay</strong>, which is also defined on the <code>Exchange.REDELIVERY_DELAY</code>.<br clear="none"> Is this header is absent, normal redelivery rules apply.</p><h4 id="BookInOnePage-Whichendpointfailed">Which endpoint failed</h4><p><strong>Available as of Camel 2.1</strong></p><p>When Camel routes messages it will decorate the <a shape="rect" href="exchange.html">Exchange</a> with a property that contains the <strong>last</strong> endpoint Camel send the <a shape="rect" href="exchange.html">Exch
 ange</a> to:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>Then the messages routed to the <code>jms:queue:dead</code> is the original input. If we want to manually retry we can move the JMS message from the failed to the input queue, with no problem as the message is the same as the original we received.</p><h3 id="BookInOnePage-OnRedelivery">OnRedelivery</h3><p>When <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> is doing redeliver its possible to configure a <a shape="rect" href="processor.html">Processor</a> that is executed just <strong>before</strong> every redelivery attempt. This can be used for the situations where you need to alter the message before its redelivered. See below for sample.</p><div class="confluence-information-macro confluence-information-macro-tip"><p class="title">onException and onRedeliver</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>We also support for per <a shape=
 "rect" href="exception-clause.html"><strong>onException</strong></a> to set a <strong>onRedeliver</strong>. That means you can do special on redelivery for different exceptions, as opposed to onRedelivery set on <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> can be viewed as a global scope.</p></div></div><h3 id="BookInOnePage-Redeliverydefaultvalues">Redelivery default values</h3><p>Redelivery is disabled by default.</p><p>The default redeliver policy will use the following values:</p><ul><li>maximumRedeliveries=0</li><li>redeliverDelay=1000L (1 second)</li><li>maximumRedeliveryDelay = 60 * 1000L (60 seconds)</li><li>And the exponential backoff and collision avoidance is turned off.</li><li>The retriesExhaustedLogLevel are set to LoggingLevel.ERROR</li><li>The retryAttemptedLogLevel are set to LoggingLevel.DEBUG</li><li>Stack traces is logged for exhausted messages from Camel 2.2 onwards.</li><li>Handled exceptions is not logged from Camel 2.3 onwards</li><
 li>logExhaustedMessageHistory is true for default error handler, and false for dead letter channel.</li><li>logExhaustedMessageBody <strong>Camel 2.17:</strong>&#160;is disabled by default to avoid logging sensitive message body/header details. If this option is true, then&#160;logExhaustedMessageHistory must also be true.</li></ul><p>The maximum redeliver delay ensures that a delay is never longer than the value, default 1 minute. This can happen if you turn on the exponential backoff.</p><p>The maximum redeliveries is the number of <strong>re</strong> delivery attempts. By default Camel will try to process the exchange 1 + 5 times. 1 time for the normal attempt and then 5 attempts as redeliveries.<br clear="none"> Setting the maximumRedeliveries to a negative value such as -1 will then always redelivery (unlimited).<br clear="none"> Setting the maximumRedeliveries to 0 will disable any re delivery attempt.</p><p>Camel will log delivery failures at the DEBUG logging level by defaul
 t. You can change this by specifying retriesExhaustedLogLevel and/or retryAttemptedLogLevel. See <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ExceptionBuilderWithRetryLoggingLevelSetTest.java">ExceptionBuilderWithRetryLoggingLevelSetTest</a> for an example.</p><p>You can turn logging of stack traces on/off. If turned off Camel will still log the redelivery attempt. Its just much less verbose.</p><h4 id="BookInOnePage-RedeliverDelayPattern">Redeliver Delay Pattern</h4><p>Delay pattern is used as a single option to set a range pattern for delays. If used then the following options does not apply: (delay, backOffMultiplier, useExponentialBackOff, useCollisionAvoidance, maximumRedeliveryDelay).</p><p>The idea is to set groups of ranges using the following syntax: <code>limit:delay;limit 2:delay 2;limit 3:delay 3;...;limit N:delay N</code></p><p>Each group has two values separated with colon</p><
 ul class="alternate"><li>limit = upper limit</li><li>delay = delay in millis<br clear="none"> And the groups is again separated with semi colon.<br clear="none"> The rule of thumb is that the next groups should have a higher limit than the previous group.</li></ul><p>Lets clarify this with an example:<br clear="none"> <code>delayPattern=5:1000;10:5000;20:20000</code></p><p>That gives us 3 groups:</p><ul class="alternate"><li>5:1000</li><li>10:5000</li><li>20:20000</li></ul><p>Resulting in these delays for redelivery attempt:</p><ul class="alternate"><li>Redelivery attempt number 1..4 = 0 millis (as the first group start with 5)</li><li>Redelivery attempt number 5..9 = 1000 millis (the first group)</li><li>Redelivery attempt number 10..19 = 5000 millis (the second group)</li><li>Redelivery attempt number 20.. = 20000 millis (the last group)</li></ul><p>Note: The first redelivery attempt is 1, so the first group should start with 1 or higher.</p><p>You can start a group with limit 1 t
 o eg have a starting delay: <code>delayPattern=1:1000;5:5000</code></p><ul class="alternate"><li>Redelivery attempt number 1..4 = 1000 millis (the first group)</li><li>Redelivery attempt number 5.. = 5000 millis (the last group)</li></ul><p>There is no requirement that the next delay should be higher than the previous. You can use any delay value you like. For example with <code>delayPattern=1:5000;3:1000</code> we start with 5 sec delay and then later reduce that to 1 second.</p><h3 id="BookInOnePage-Redeliveryheader">Redelivery header</h3><p>When a message is redelivered the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/camel-core/apidocs/org/apache/camel/processor/DeadLetterChannel.html">DeadLetterChannel</a> will append a customizable header to the message to indicate how many times its been redelivered. <br clear="none"> Before Camel 2.6: The header is <strong>CamelRedeliveryCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_COU
 NTER</code>.<br clear="none"> Starting with 2.6: The header <strong>CamelRedeliveryMaxCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_MAX_COUNTER</code>, contains the maximum redelivery setting. This header is absent if you use <code>retryWhile</code> or have unlimited maximum redelivery configured.</p><p>And a boolean flag whether it is being redelivered or not (first attempt)<br clear="none"> The header <strong>CamelRedelivered</strong> contains a boolean if the message is redelivered or not, which is also defined on the <code>Exchange.REDELIVERED</code>.</p><p>Dynamically calculated delay from the exchange<br clear="none"> In Camel 2.9 and 2.8.2: The header is <strong>CamelRedeliveryDelay</strong>, which is also defined on the <code>Exchange.REDELIVERY_DELAY</code>.<br clear="none"> Is this header is absent, normal redelivery rules apply.</p><h4 id="BookInOnePage-Whichendpointfailed">Which endpoint failed</h4><p><strong>Available as of Camel 2.1</strong><
 /p><p>When Camel routes messages it will decorate the <a shape="rect" href="exchange.html">Exchange</a> with a property that contains the <strong>last</strong> endpoint Camel send the <a shape="rect" href="exchange.html">Exchange</a> to:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[String lastEndpointUri = exchange.getProperty(Exchange.TO_ENDPOINT, String.class);
 ]]></script>
 </div></div><p>The <code>Exchange.TO_ENDPOINT</code> have the constant value <code>CamelToEndpoint</code>.</p><p>This information is updated when Camel sends a message to any endpoint. So if it exists its the <strong>last</strong> endpoint which Camel send the Exchange to.</p><p>When for example processing the <a shape="rect" href="exchange.html">Exchange</a> at a given <a shape="rect" href="endpoint.html">Endpoint</a> and the message is to be moved into the dead letter queue, then Camel also decorates the Exchange with another property that contains that <strong>last</strong> endpoint:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
@@ -12229,7 +12229,7 @@ from(&quot;seda:foo&quot;).routeId(&quot
     .to(&quot;mock:foo&quot;)
     .throwException(new IllegalArgumentException(&quot;Forced&quot;));
 ]]></script>
-</div></div><p>And the sample sample with XML DSL</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>And the sample sample with XML DSL<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;!-- notice we use the errorHandlerRef attribute to refer to the error handler to use as default --&gt;
    &lt;camelContext errorHandlerRef=&quot;myErrorHandler&quot; xmlns=&quot;http://camel.apache.org/schema/spring&quot;&gt;
@@ -12260,7 +12260,7 @@ RouteBuilder builder = new RouteBuilder(
     }
 };
 ]]></script>
-</div></div><p>You can also configure the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/RedeliveryPolicy.html">RedeliveryPolicy</a> as this example shows</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>You can also configure the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/RedeliveryPolicy.html">RedeliveryPolicy</a> as this example shows<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 RouteBuilder builder = new RouteBuilder() {
     public void configure() {
@@ -12283,7 +12283,7 @@ errorHandler(deadLetterChannel(&quot;moc
         // setting delay to zero is just to make unit testing faster
         .redeliveryDelay(0L));
 ]]></script>
-</div></div><p>And this is the processor <code>MyRedeliveryProcessor</code> where we alter the message.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>And this is the processor <code>MyRedeliveryProcessor</code> where we alter the message.<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 // This is our processor that is executed before every redelivery attempt
 // here we can do what we want in the java code, such as altering the message
@@ -17292,11 +17292,11 @@ template.send(&quot;direct:alias-verify&
 ]]></script>
 </div></div><p></p><h3 id="BookInOnePage-SeeAlso.28">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><li><a shape="rect" href="crypto.html">Crypto</a> Crypto is also available as a <a shape="rect" href="data-format.html">Data Format</a></li></ul> <h2 id="BookInOnePage-CXFComponent">CXF Component</h2><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><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><div class="confluence-information-macro confluence-information-macro-tip"><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using CXF in streaming modes (see DataFormat option), then also read about <a shape="rect" href="stream-caching.html">Stream caching</a>.</p></div></div><p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1454134888032 {padding: 0px;}
-div.rbtoc1454134888032 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1454134888032 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1454206787465 {padding: 0px;}
+div.rbtoc1454206787465 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1454206787465 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1454134888032">
+/*]]>*/</style></p><div class="toc-macro rbtoc1454206787465">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-URIformat">URI format</a></li><li><a shape="rect" href="#BookInOnePage-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Thedescriptionsofthedataformats">The descriptions of the dataformats</a>

Modified: websites/production/camel/content/book-pattern-appendix.html
==============================================================================
--- websites/production/camel/content/book-pattern-appendix.html (original)
+++ websites/production/camel/content/book-pattern-appendix.html Sun Jan 31 02:24:33 2016
@@ -511,7 +511,7 @@ RouteBuilder builder = new RouteBuilder(
     errorHandler(deadLetterChannel(&quot;jms:queue:dead&quot;)
        .useOriginalMessage().maximumRedeliveries(5).redeliverDelay(5000);
 ]]></script>
-</div></div><p>Then the messages routed to the <code>jms:queue:dead</code> is the original input. If we want to manually retry we can move the JMS message from the failed to the input queue, with no problem as the message is the same as the original we received.</p><h3 id="BookPatternAppendix-OnRedelivery">OnRedelivery</h3><p>When <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> is doing redeliver its possible to configure a <a shape="rect" href="processor.html">Processor</a> that is executed just <strong>before</strong> every redelivery attempt. This can be used for the situations where you need to alter the message before its redelivered. See below for sample.</p><div class="confluence-information-macro confluence-information-macro-tip"><p class="title">onException and onRedeliver</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>We also support for per <a 
 shape="rect" href="exception-clause.html"><strong>onException</strong></a> to set a <strong>onRedeliver</strong>. That means you can do special on redelivery for different exceptions, as opposed to onRedelivery set on <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> can be viewed as a global scope.</p></div></div><h3 id="BookPatternAppendix-Redeliverydefaultvalues">Redelivery default values</h3><p>Redelivery is disabled by default.</p><p>The default redeliver policy will use the following values:</p><ul><li>maximumRedeliveries=0</li><li>redeliverDelay=1000L (1 second)</li><li>maximumRedeliveryDelay = 60 * 1000L (60 seconds)</li><li>And the exponential backoff and collision avoidance is turned off.</li><li>The retriesExhaustedLogLevel are set to LoggingLevel.ERROR</li><li>The retryAttemptedLogLevel are set to LoggingLevel.DEBUG</li><li>Stack traces is logged for exhausted messages from Camel 2.2 onwards.</li><li>Handled exceptions is not logged from Camel 2.3 o
 nwards</li><li>logExhaustedMessageHistory is true for default error handler, and false for dead letter channel.</li></ul><p>The maximum redeliver delay ensures that a delay is never longer than the value, default 1 minute. This can happen if you turn on the exponential backoff.</p><p>The maximum redeliveries is the number of <strong>re</strong> delivery attempts. By default Camel will try to process the exchange 1 + 5 times. 1 time for the normal attempt and then 5 attempts as redeliveries.<br clear="none"> Setting the maximumRedeliveries to a negative value such as -1 will then always redelivery (unlimited).<br clear="none"> Setting the maximumRedeliveries to 0 will disable any re delivery attempt.</p><p>Camel will log delivery failures at the DEBUG logging level by default. You can change this by specifying retriesExhaustedLogLevel and/or retryAttemptedLogLevel. See <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/camel/trunk/camel-core/src/test/java/org
 /apache/camel/builder/ExceptionBuilderWithRetryLoggingLevelSetTest.java">ExceptionBuilderWithRetryLoggingLevelSetTest</a> for an example.</p><p>You can turn logging of stack traces on/off. If turned off Camel will still log the redelivery attempt. Its just much less verbose.</p><h4 id="BookPatternAppendix-RedeliverDelayPattern">Redeliver Delay Pattern</h4><p>Delay pattern is used as a single option to set a range pattern for delays. If used then the following options does not apply: (delay, backOffMultiplier, useExponentialBackOff, useCollisionAvoidance, maximumRedeliveryDelay).</p><p>The idea is to set groups of ranges using the following syntax: <code>limit:delay;limit 2:delay 2;limit 3:delay 3;...;limit N:delay N</code></p><p>Each group has two values separated with colon</p><ul class="alternate"><li>limit = upper limit</li><li>delay = delay in millis<br clear="none"> And the groups is again separated with semi colon.<br clear="none"> The rule of thumb is that the next groups sho
 uld have a higher limit than the previous group.</li></ul><p>Lets clarify this with an example:<br clear="none"> <code>delayPattern=5:1000;10:5000;20:20000</code></p><p>That gives us 3 groups:</p><ul class="alternate"><li>5:1000</li><li>10:5000</li><li>20:20000</li></ul><p>Resulting in these delays for redelivery attempt:</p><ul class="alternate"><li>Redelivery attempt number 1..4 = 0 millis (as the first group start with 5)</li><li>Redelivery attempt number 5..9 = 1000 millis (the first group)</li><li>Redelivery attempt number 10..19 = 5000 millis (the second group)</li><li>Redelivery attempt number 20.. = 20000 millis (the last group)</li></ul><p>Note: The first redelivery attempt is 1, so the first group should start with 1 or higher.</p><p>You can start a group with limit 1 to eg have a starting delay: <code>delayPattern=1:1000;5:5000</code></p><ul class="alternate"><li>Redelivery attempt number 1..4 = 1000 millis (the first group)</li><li>Redelivery attempt number 5.. = 5000 mi
 llis (the last group)</li></ul><p>There is no requirement that the next delay should be higher than the previous. You can use any delay value you like. For example with <code>delayPattern=1:5000;3:1000</code> we start with 5 sec delay and then later reduce that to 1 second.</p><h3 id="BookPatternAppendix-Redeliveryheader">Redelivery header</h3><p>When a message is redelivered the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/camel-core/apidocs/org/apache/camel/processor/DeadLetterChannel.html">DeadLetterChannel</a> will append a customizable header to the message to indicate how many times its been redelivered. <br clear="none"> Before Camel 2.6: The header is <strong>CamelRedeliveryCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_COUNTER</code>.<br clear="none"> Starting with 2.6: The header <strong>CamelRedeliveryMaxCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_MAX_COUNTER</code>, contains the maximum r
 edelivery setting. This header is absent if you use <code>retryWhile</code> or have unlimited maximum redelivery configured.</p><p>And a boolean flag whether it is being redelivered or not (first attempt)<br clear="none"> The header <strong>CamelRedelivered</strong> contains a boolean if the message is redelivered or not, which is also defined on the <code>Exchange.REDELIVERED</code>.</p><p>Dynamically calculated delay from the exchange<br clear="none"> In Camel 2.9 and 2.8.2: The header is <strong>CamelRedeliveryDelay</strong>, which is also defined on the <code>Exchange.REDELIVERY_DELAY</code>.<br clear="none"> Is this header is absent, normal redelivery rules apply.</p><h4 id="BookPatternAppendix-Whichendpointfailed">Which endpoint failed</h4><p><strong>Available as of Camel 2.1</strong></p><p>When Camel routes messages it will decorate the <a shape="rect" href="exchange.html">Exchange</a> with a property that contains the <strong>last</strong> endpoint Camel send the <a shape="r
 ect" href="exchange.html">Exchange</a> to:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>Then the messages routed to the <code>jms:queue:dead</code> is the original input. If we want to manually retry we can move the JMS message from the failed to the input queue, with no problem as the message is the same as the original we received.</p><h3 id="BookPatternAppendix-OnRedelivery">OnRedelivery</h3><p>When <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> is doing redeliver its possible to configure a <a shape="rect" href="processor.html">Processor</a> that is executed just <strong>before</strong> every redelivery attempt. This can be used for the situations where you need to alter the message before its redelivered. See below for sample.</p><div class="confluence-information-macro confluence-information-macro-tip"><p class="title">onException and onRedeliver</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>We also support for per <a 
 shape="rect" href="exception-clause.html"><strong>onException</strong></a> to set a <strong>onRedeliver</strong>. That means you can do special on redelivery for different exceptions, as opposed to onRedelivery set on <a shape="rect" href="dead-letter-channel.html">Dead Letter Channel</a> can be viewed as a global scope.</p></div></div><h3 id="BookPatternAppendix-Redeliverydefaultvalues">Redelivery default values</h3><p>Redelivery is disabled by default.</p><p>The default redeliver policy will use the following values:</p><ul><li>maximumRedeliveries=0</li><li>redeliverDelay=1000L (1 second)</li><li>maximumRedeliveryDelay = 60 * 1000L (60 seconds)</li><li>And the exponential backoff and collision avoidance is turned off.</li><li>The retriesExhaustedLogLevel are set to LoggingLevel.ERROR</li><li>The retryAttemptedLogLevel are set to LoggingLevel.DEBUG</li><li>Stack traces is logged for exhausted messages from Camel 2.2 onwards.</li><li>Handled exceptions is not logged from Camel 2.3 o
 nwards</li><li>logExhaustedMessageHistory is true for default error handler, and false for dead letter channel.</li><li>logExhaustedMessageBody <strong>Camel 2.17:</strong>&#160;is disabled by default to avoid logging sensitive message body/header details. If this option is true, then&#160;logExhaustedMessageHistory must also be true.</li></ul><p>The maximum redeliver delay ensures that a delay is never longer than the value, default 1 minute. This can happen if you turn on the exponential backoff.</p><p>The maximum redeliveries is the number of <strong>re</strong> delivery attempts. By default Camel will try to process the exchange 1 + 5 times. 1 time for the normal attempt and then 5 attempts as redeliveries.<br clear="none"> Setting the maximumRedeliveries to a negative value such as -1 will then always redelivery (unlimited).<br clear="none"> Setting the maximumRedeliveries to 0 will disable any re delivery attempt.</p><p>Camel will log delivery failures at the DEBUG logging lev
 el by default. You can change this by specifying retriesExhaustedLogLevel and/or retryAttemptedLogLevel. See <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ExceptionBuilderWithRetryLoggingLevelSetTest.java">ExceptionBuilderWithRetryLoggingLevelSetTest</a> for an example.</p><p>You can turn logging of stack traces on/off. If turned off Camel will still log the redelivery attempt. Its just much less verbose.</p><h4 id="BookPatternAppendix-RedeliverDelayPattern">Redeliver Delay Pattern</h4><p>Delay pattern is used as a single option to set a range pattern for delays. If used then the following options does not apply: (delay, backOffMultiplier, useExponentialBackOff, useCollisionAvoidance, maximumRedeliveryDelay).</p><p>The idea is to set groups of ranges using the following syntax: <code>limit:delay;limit 2:delay 2;limit 3:delay 3;...;limit N:delay N</code></p><p>Each group has two values separat
 ed with colon</p><ul class="alternate"><li>limit = upper limit</li><li>delay = delay in millis<br clear="none"> And the groups is again separated with semi colon.<br clear="none"> The rule of thumb is that the next groups should have a higher limit than the previous group.</li></ul><p>Lets clarify this with an example:<br clear="none"> <code>delayPattern=5:1000;10:5000;20:20000</code></p><p>That gives us 3 groups:</p><ul class="alternate"><li>5:1000</li><li>10:5000</li><li>20:20000</li></ul><p>Resulting in these delays for redelivery attempt:</p><ul class="alternate"><li>Redelivery attempt number 1..4 = 0 millis (as the first group start with 5)</li><li>Redelivery attempt number 5..9 = 1000 millis (the first group)</li><li>Redelivery attempt number 10..19 = 5000 millis (the second group)</li><li>Redelivery attempt number 20.. = 20000 millis (the last group)</li></ul><p>Note: The first redelivery attempt is 1, so the first group should start with 1 or higher.</p><p>You can start a gr
 oup with limit 1 to eg have a starting delay: <code>delayPattern=1:1000;5:5000</code></p><ul class="alternate"><li>Redelivery attempt number 1..4 = 1000 millis (the first group)</li><li>Redelivery attempt number 5.. = 5000 millis (the last group)</li></ul><p>There is no requirement that the next delay should be higher than the previous. You can use any delay value you like. For example with <code>delayPattern=1:5000;3:1000</code> we start with 5 sec delay and then later reduce that to 1 second.</p><h3 id="BookPatternAppendix-Redeliveryheader">Redelivery header</h3><p>When a message is redelivered the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/camel-core/apidocs/org/apache/camel/processor/DeadLetterChannel.html">DeadLetterChannel</a> will append a customizable header to the message to indicate how many times its been redelivered. <br clear="none"> Before Camel 2.6: The header is <strong>CamelRedeliveryCounter</strong>, which is also defined on the <code
 >Exchange.REDELIVERY_COUNTER</code>.<br clear="none"> Starting with 2.6: The header <strong>CamelRedeliveryMaxCounter</strong>, which is also defined on the <code>Exchange.REDELIVERY_MAX_COUNTER</code>, contains the maximum redelivery setting. This header is absent if you use <code>retryWhile</code> or have unlimited maximum redelivery configured.</p><p>And a boolean flag whether it is being redelivered or not (first attempt)<br clear="none"> The header <strong>CamelRedelivered</strong> contains a boolean if the message is redelivered or not, which is also defined on the <code>Exchange.REDELIVERED</code>.</p><p>Dynamically calculated delay from the exchange<br clear="none"> In Camel 2.9 and 2.8.2: The header is <strong>CamelRedeliveryDelay</strong>, which is also defined on the <code>Exchange.REDELIVERY_DELAY</code>.<br clear="none"> Is this header is absent, normal redelivery rules apply.</p><h4 id="BookPatternAppendix-Whichendpointfailed">Which endpoint failed</h4><p><strong>Avail
 able as of Camel 2.1</strong></p><p>When Camel routes messages it will decorate the <a shape="rect" href="exchange.html">Exchange</a> with a property that contains the <strong>last</strong> endpoint Camel send the <a shape="rect" href="exchange.html">Exchange</a> to:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[String lastEndpointUri = exchange.getProperty(Exchange.TO_ENDPOINT, String.class);
 ]]></script>
 </div></div><p>The <code>Exchange.TO_ENDPOINT</code> have the constant value <code>CamelToEndpoint</code>.</p><p>This information is updated when Camel sends a message to any endpoint. So if it exists its the <strong>last</strong> endpoint which Camel send the Exchange to.</p><p>When for example processing the <a shape="rect" href="exchange.html">Exchange</a> at a given <a shape="rect" href="endpoint.html">Endpoint</a> and the message is to be moved into the dead letter queue, then Camel also decorates the Exchange with another property that contains that <strong>last</strong> endpoint:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
@@ -554,7 +554,7 @@ from(&quot;seda:foo&quot;).routeId(&quot
     .to(&quot;mock:foo&quot;)
     .throwException(new IllegalArgumentException(&quot;Forced&quot;));
 ]]></script>
-</div></div><p>And the sample sample with XML DSL</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>And the sample sample with XML DSL<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;!-- notice we use the errorHandlerRef attribute to refer to the error handler to use as default --&gt;
    &lt;camelContext errorHandlerRef=&quot;myErrorHandler&quot; xmlns=&quot;http://camel.apache.org/schema/spring&quot;&gt;
@@ -585,7 +585,7 @@ RouteBuilder builder = new RouteBuilder(
     }
 };
 ]]></script>
-</div></div><p>You can also configure the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/RedeliveryPolicy.html">RedeliveryPolicy</a> as this example shows</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>You can also configure the <a shape="rect" class="external-link" href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/RedeliveryPolicy.html">RedeliveryPolicy</a> as this example shows<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 RouteBuilder builder = new RouteBuilder() {
     public void configure() {
@@ -608,7 +608,7 @@ errorHandler(deadLetterChannel(&quot;moc
         // setting delay to zero is just to make unit testing faster
         .redeliveryDelay(0L));
 ]]></script>
-</div></div><p>And this is the processor <code>MyRedeliveryProcessor</code> where we alter the message.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>And this is the processor <code>MyRedeliveryProcessor</code> where we alter the message.<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 // This is our processor that is executed before every redelivery attempt
 // here we can do what we want in the java code, such as altering the message

Modified: websites/production/camel/content/book-tutorials.html
==============================================================================
--- websites/production/camel/content/book-tutorials.html (original)
+++ websites/production/camel/content/book-tutorials.html Sun Jan 31 02:24:33 2016
@@ -143,11 +143,11 @@ The tutorial has been designed in two pa
 While not actual tutorials you might find working through the source of the various <a shape="rect" href="examples.html">Examples</a> useful.</li></ul>
 
 <h2 id="BookTutorials-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</h2><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Thanks</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This tutorial was kindly donated to Apache Camel by Martin Gilday.</p></div></div><h2 id="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><style type="text/css">/*<![CDATA[*/
-div.rbtoc1454135098264 {padding: 0px;}
-div.rbtoc1454135098264 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1454135098264 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1454206963962 {padding: 0px;}
+div.rbtoc1454206963962 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1454206963962 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1454135098264">
+/*]]>*/</style></p><div class="toc-macro rbtoc1454206963962">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookTutorials-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#BookTutorials-Preface">Preface</a></li><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-About">About</a></li><li><a shape="rect" href="#BookTutorials-CreatetheCamelProject">Create the Camel Project</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookTutorials-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul>
 </li><li><a shape="rect" href="#BookTutorials-WritingtheServer">Writing the Server</a>
@@ -2252,11 +2252,11 @@ So we completed the last piece in the pi
 <p>This example has been removed from <strong>Camel 2.9</strong> onwards. Apache Axis 1.4 is a very old and unsupported framework. We encourage users to use <a shape="rect" href="cxf.html">CXF</a> instead of Axis.</p></div></div>
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1454135098580 {padding: 0px;}
-div.rbtoc1454135098580 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1454135098580 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1454206964293 {padding: 0px;}
+div.rbtoc1454206964293 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1454206964293 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1454135098580">
+/*]]>*/</style><div class="toc-macro rbtoc1454206964293">
 <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>

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