You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by dk...@apache.org on 2015/07/01 22:13:56 UTC

svn commit: r956584 [29/37] - in /websites/production/activemq/content: ./ 2004/04/13/ 2004/05/26/ 2004/06/23/ 2004/06/25/ 2004/08/17/ 2004/08/23/ 2004/10/07/ 2004/11/02/ 2004/12/20/ 2005/02/03/ 2005/02/25/ 2005/04/11/ 2005/06/06/ 2005/07/04/ 2005/07/1...

Modified: websites/production/activemq/content/per-destination-policies.html
==============================================================================
--- websites/production/activemq/content/per-destination-policies.html (original)
+++ websites/production/activemq/content/per-destination-policies.html Wed Jul  1 20:13:48 2015
@@ -62,7 +62,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -83,7 +83,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<p>We support a number of different policies which can be attached to individual destinations (queues, topics) or to wildcards of queue/topic hierarchies. This makes it easy to configure how different regions of the JMS destination space are handled.</p><p>The properties you can set on a Destination are as follows:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Common property</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>default</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>producerFlowControl</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the producer will slow down and eventually block if no resources(e.g. memory) are available on the broker. If this is off messages get off-lined to disk to prevent memory exhaustion</p></td
 ></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>enableAudit</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>tracks duplicate messages (which can occur in failover for non-persistent messages)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>useCache</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>persistent messages are cached for fast retrieval from store</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxPageSize</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>200</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>maximum number of persistent messages to page from store at a time</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxBrowsePageSize</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>400</p></td><td colspan="1" row
 span="1" class="confluenceTd"><p>maximum number of persistent messages to page from store for a browser</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>memoryLimit</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The memory limit for a given destination. This acts as a child to the overall broker memory specified by the <a shape="rect" href="producer-flow-control.html"><code>&lt;systemUsage&gt;</code>'s <code>memoryLimit</code> attribute</a>. There is no default for this value; it simply acts as a child to the overall broker memory until the broker memory is exhausted.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>minimumMessageSize</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>1024</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>for non-serialized messages (embedded broker) - the assumed size of the message used for memory usage calculatio
 n. Serialized messages used the serialized size as the basis for the memory calculation</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>cursorMemoryHighWaterMark</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>70</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the percentage (%) tipping point at which a system memory limit will cause a cursor to block or spool to disk</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>storeUsageHighWaterMark</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>100</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the percentage (%) tipping point at which a system usage store limit will cause a sent to block</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>prioritizedMessages</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>have the store respect message priority</p></td></tr>
 <tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForConsumed</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message when a message is consumed by a client</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForDelivery</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message when a message is sent to a client</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForSlowConsumers</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message if a consumer is deemed slow</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advsioryForFastProducers</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1
 " rowspan="1" class="confluenceTd"><p>send an advisory message if a producer is deemed fast</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryWhenFull</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message when a limit (memory,store,temp disk) is full</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>includeBodyForAdvisory</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>includes the body of the original message that triggered the advisory as part of the dataStructure field in the advisory message (when applicable). Normally the message body is cleared.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>gcInactiveDestinations</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>
 delete inactive destination</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>inactiveTimoutBeforeGC</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>inactivity period (in ms) before destination is considered inactive</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span>usePrefetchExtension</span></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the prefetch extension is used when a&#160;message is delivered but not acked, such that the broker can dispatch&#160;another message (e.g., prefetch == 0), the idea being that there will always be prefetch num&#160;messages pending. It also allows a transaction batch to exceed the prefetch&#160;value.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>slowConsumerStrategy</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>nu
 ll</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the strategy for handling slow consumers. see <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/policy/AbortSlowConsumerStrategy.java">abortSlowConsumerStrategy</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxDestinations</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>-1</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.12) if 0 or greater, sets the maximum number of destinations that can be created. This is useful to limit the number of hierarchical destinations that can be created under a wildcard destination.</p></td></tr></tbody></table></div><p>Additional properties for a Queue</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Queue only property</p></th><th colspan="1" rowspan="1" clas
 s="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>useConsumerPriority</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>use the priority of a consumer when dispatching messages from a Queue</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>strictOrderDispatch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>if true queue will not round robin consumers, but it'll use a single one until its prefetch buffer is full</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>optimizedDispatch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>don't use a separate thread for dispatching from a Queue</p></td></tr><tr><td 
 colspan="1" rowspan="1" class="confluenceTd"><p>lazyDispatch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>only page in from store the number of messages that can be dispatched at time</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>consumersBeforeDispatchStarts</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>0</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>when the first consumer connects, wait for specified number of consumers before message dispatching starts</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>timeBeforeDispatchStarts</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>0</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>when the first consumer connects, wait for specified time (in ms) before message dispatching starts</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>queuePrefetch</p></
 td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the prefetch for consumers that are using the default value</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>expireMessagesPeriod</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>30000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the period (in ms) of checks for message expiry on queued messages, value of 0 disables</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>persistJMSRedelivered</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v 5.10) if true, before a persistent message is dispatched by the broker for the first time, the message is rewritten to reflect the possible delivery.</p><p>This ensures the message JMSRedelivered header is a reliable indication of possible duplicate delivery.</p></td></tr></tbody></table>
 </div><p>Additional properties for a Topic</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Topic only property</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>default</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>topicPrefetch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the prefetch for topic consumers that are using the default value</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>durableTopicPrefetch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the prefetch for durable topic consumers that are using the default value</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForDiscardingMessages</p>
 </td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory when a message is discarded from a non durable subscription</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span style="color: rgb(0,0,0);">alwaysRetroactive</span></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.6) makes all subscribers retroactive negating the need to modify the clients to enable this feature</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span style="color: rgb(0,0,0);">expireMessagesPeriod</span></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>30000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.6) the period (in ms) of checks for message expiry on inactive durable subscribers, value of 0 disables</p></td></tr></tbody></table></div><p><span style="line-height: 1.4285715;">
 The following are examples of different policies that can be customised on a per destination basis</span></p><ul><li><a shape="rect" href="dispatch-policies.html">Dispatch Policies</a></li></ul><p>Here is an <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/activemq/trunk/activemq-unit-tests/src/test/resources/org/apache/activemq/xbean/activemq-policy.xml">example</a> of this in use.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><p>We support a number of different policies which can be attached to individual destinations (queues, topics) or to wildcards of queue/topic hierarchies. This makes it easy to configure how different regions of the JMS destination space are handled.</p><p>The properties you can set on a Destination are as follows:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Common property</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>default</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>producerFlowControl</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the producer will slow down and eventually block if no resources(e.g. memory) are available on the broker. If this is off messages get off-lined to dis
 k to prevent memory exhaustion</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>enableAudit</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>tracks duplicate messages (which can occur in failover for non-persistent messages)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>useCache</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>persistent messages are cached for fast retrieval from store</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxPageSize</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>200</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>maximum number of persistent messages to page from store at a time</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxBrowsePageSize</p></td><td colspan="1" rowspan="1" class="confluence
 Td"><p>400</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>maximum number of persistent messages to page from store for a browser</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>memoryLimit</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The memory limit for a given destination. This acts as a child to the overall broker memory specified by the <a shape="rect" href="producer-flow-control.html"><code>&lt;systemUsage&gt;</code>'s <code>memoryLimit</code> attribute</a>. There is no default for this value; it simply acts as a child to the overall broker memory until the broker memory is exhausted.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>minimumMessageSize</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>1024</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>for non-serialized messages (embedded broker) - the assumed size of the me
 ssage used for memory usage calculation. Serialized messages used the serialized size as the basis for the memory calculation</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>cursorMemoryHighWaterMark</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>70</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the percentage (%) tipping point at which a system memory limit will cause a cursor to block or spool to disk</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>storeUsageHighWaterMark</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>100</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the percentage (%) tipping point at which a system usage store limit will cause a sent to block</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>prioritizedMessages</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>have the store 
 respect message priority</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForConsumed</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message when a message is consumed by a client</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForDelivery</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message when a message is sent to a client</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryForSlowConsumers</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message if a consumer is deemed slow</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advsioryForFastProducers</p></td><td colspan="1" rowspan="1" class="conflue
 nceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message if a producer is deemed fast</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>advisoryWhenFull</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory message when a limit (memory,store,temp disk) is full</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>includeBodyForAdvisory</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>includes the body of the original message that triggered the advisory as part of the dataStructure field in the advisory message (when applicable). Normally the message body is cleared.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>gcInactiveDestinations</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1
 " rowspan="1" class="confluenceTd"><p>delete inactive destination</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>inactiveTimoutBeforeGC</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>inactivity period (in ms) before destination is considered inactive</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span>usePrefetchExtension</span></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the prefetch extension is used when a&#160;message is delivered but not acked, such that the broker can dispatch&#160;another message (e.g., prefetch == 0), the idea being that there will always be prefetch num&#160;messages pending. It also allows a transaction batch to exceed the prefetch&#160;value.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>slowConsumerStrategy</p></td><td colspan="1" 
 rowspan="1" class="confluenceTd"><p>null</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the strategy for handling slow consumers. see <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/policy/AbortSlowConsumerStrategy.java">abortSlowConsumerStrategy</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxDestinations</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>-1</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.12) if 0 or greater, sets the maximum number of destinations that can be created. This is useful to limit the number of hierarchical destinations that can be created under a wildcard destination.</p></td></tr></tbody></table></div><p>Additional properties for a Queue</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Queue only property</p
 ></th><th colspan="1" rowspan="1" class="confluenceTh"><p>default</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>useConsumerPriority</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>use the priority of a consumer when dispatching messages from a Queue</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>strictOrderDispatch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>if true queue will not round robin consumers, but it'll use a single one until its prefetch buffer is full</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>optimizedDispatch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>don't use a separate thread for dispatch
 ing from a Queue</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>lazyDispatch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>only page in from store the number of messages that can be dispatched at time</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>consumersBeforeDispatchStarts</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>0</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>when the first consumer connects, wait for specified number of consumers before message dispatching starts</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>timeBeforeDispatchStarts</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>0</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>when the first consumer connects, wait for specified time (in ms) before message dispatching starts</p></td></tr><tr><td colspan="1" rowspan="1" class
 ="confluenceTd"><p>queuePrefetch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the prefetch for consumers that are using the default value</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>expireMessagesPeriod</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>30000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>the period (in ms) of checks for message expiry on queued messages, value of 0 disables</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>persistJMSRedelivered</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v 5.10) if true, before a persistent message is dispatched by the broker for the first time, the message is rewritten to reflect the possible delivery.</p><p>This ensures the message JMSRedelivered header is a reliable indication of possible duplicate d
 elivery.</p></td></tr></tbody></table></div><p>Additional properties for a Topic</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Topic only property</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>default</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>topicPrefetch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the prefetch for topic consumers that are using the default value</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>durableTopicPrefetch</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>n/a</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>sets the prefetch for durable topic consumers that are using the default value</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd
 "><p>advisoryForDiscardingMessages</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>send an advisory when a message is discarded from a non durable subscription</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span style="color: rgb(0,0,0);">alwaysRetroactive</span></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.6) makes all subscribers retroactive negating the need to modify the clients to enable this feature</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span style="color: rgb(0,0,0);">expireMessagesPeriod</span></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>30000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.6) the period (in ms) of checks for message expiry on inactive durable subscribers, value of 0 disables</p></td></tr></tbody></table></div><p>
 <span style="line-height: 1.4285715;">The following are examples of different policies that can be customised on a per destination basis</span></p><ul><li><a shape="rect" href="dispatch-policies.html">Dispatch Policies</a></li></ul><p>Here is an <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/activemq/trunk/activemq-unit-tests/src/test/resources/org/apache/activemq/xbean/activemq-policy.xml">example</a> of this in use.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;beans 
   xmlns=&quot;http://www.springframework.org/schema/beans&quot; 
@@ -142,7 +142,7 @@
 
 &lt;/beans&gt;
 ]]></script>
-</div></div>
+</div></div></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/performance-report.html
==============================================================================
--- websites/production/activemq/content/performance-report.html (original)
+++ websites/production/activemq/content/performance-report.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,11 +72,11 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="Performancereport-Performanceguides">Performance guides</h2>
+<div class="wiki-content maincontent"><h2 id="Performancereport-Performanceguides">Performance guides</h2>
 
 <p>If you're not convinced by performance reports then please do try running performance tests yourself. You might wanna check out our overview of <a shape="rect" href="performance.html">Performance</a> or try using out the <a shape="rect" href="activemq-performance-module-users-manual.html">ActiveMQ Performance Module Users Manual</a></p>
 
-<p>The Commercial Providers on the <a shape="rect" href="support.html">Support</a> page may also be able to help diagnose performance issues, suggest changes, etc...</p>
+<p>The Commercial Providers on the <a shape="rect" href="support.html">Support</a> page may also be able to help diagnose performance issues, suggest changes, etc...</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/performance-tuning.html
==============================================================================
--- websites/production/activemq/content/performance-tuning.html (original)
+++ websites/production/activemq/content/performance-tuning.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,7 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<p>For a more complete overview see <a shape="rect" href="performance.html">Performance</a>.</p>
+<div class="wiki-content maincontent"><p>For a more complete overview see <a shape="rect" href="performance.html">Performance</a>.</p>
 
 <p>There are trade-offs between performance and reliabilty. <br clear="none">
 By default, activemq strikes a balance between the two, so there are some things you can change to increase throughput.</p>
@@ -114,7 +114,7 @@ By default, activemq strikes a balance b
 
 <p>If you're not convinced by performance reports then please do try running performance tests yourself. You might wanna check out our overview of <a shape="rect" href="performance.html">Performance</a> or try using out the <a shape="rect" href="activemq-performance-module-users-manual.html">ActiveMQ Performance Module Users Manual</a></p>
 
-<p>The Commercial Providers on the <a shape="rect" href="support.html">Support</a> page may also be able to help diagnose performance issues, suggest changes, etc...</p>
+<p>The Commercial Providers on the <a shape="rect" href="support.html">Support</a> page may also be able to help diagnose performance issues, suggest changes, etc...</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/performance.html
==============================================================================
--- websites/production/activemq/content/performance.html (original)
+++ websites/production/activemq/content/performance.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,7 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="Performance-Performance">Performance</h2>
+<div class="wiki-content maincontent"><h2 id="Performance-Performance">Performance</h2>
 
 <p>Performance differs greatly depending on many different factors</p>
 
@@ -96,7 +96,7 @@
 
 <p>If you're not convinced by performance reports then please do try running performance tests yourself. You might wanna check out our overview of <a shape="rect" href="performance.html">Performance</a> or try using out the <a shape="rect" href="activemq-performance-module-users-manual.html">ActiveMQ Performance Module Users Manual</a></p>
 
-<p>The Commercial Providers on the <a shape="rect" href="support.html">Support</a> page may also be able to help diagnose performance issues, suggest changes, etc...</p>
+<p>The Commercial Providers on the <a shape="rect" href="support.html">Support</a> page may also be able to help diagnose performance issues, suggest changes, etc...</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/perl.html
==============================================================================
--- websites/production/activemq/content/perl.html (original)
+++ websites/production/activemq/content/perl.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,7 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="Perl-PerlSupport">Perl Support</h2>
+<div class="wiki-content maincontent"><h2 id="Perl-PerlSupport">Perl Support</h2>
 
 <p>For Perl support we recommend the use of the <a shape="rect" class="external-link" href="http://activemq.apache.org/stomp.html">Stomp protocol</a>.<br clear="none">
 There are various Perl Stomp clients available, such as</p>
@@ -83,7 +83,7 @@ There are various Perl Stomp clients ava
 <p>Both are hosted on <a shape="rect" class="external-link" href="http://www.cpan.org" rel="nofollow">CPAN.org</a> </p>
 
 <p>A more exhausting list of Stomp client libraries for Perl is available on <a shape="rect" class="external-link" href="http://stomp.github.com//implementations.html" rel="nofollow">stomp.github.com</a>.</p>
-
+</div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/persistence-questions.html
==============================================================================
--- websites/production/activemq/content/persistence-questions.html (original)
+++ websites/production/activemq/content/persistence-questions.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,9 +72,9 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<p>Questions relating to long term persistence of messages.</p>
+<div class="wiki-content maincontent"><p>Questions relating to long term persistence of messages.</p>
 
-<ul class="childpages-macro"><li><a shape="rect" href="are-messages-read-directly-from-the-journal.html">Are messages read directly from the journal</a></li><li><a shape="rect" href="does-activemq-support-my-sql-database.html">Does ActiveMQ support my SQL database</a></li><li><a shape="rect" href="how-does-journaling-work-with-multiple-brokers.html">How does journaling work with multiple brokers</a></li><li><a shape="rect" href="how-does-the-journal-work.html">How does the journal work</a></li><li><a shape="rect" href="how-do-i-back-up-kahadb.html">How do I back-up KahaDB</a></li><li><a shape="rect" href="how-do-i-change-the-message-store-directory-for-an-embedded-broker.html">How do I change the message store directory for an embedded broker.</a></li><li><a shape="rect" href="is-there-a-specified-size-of-the-journal.html">Is there a specified size of the journal</a></li><li><a shape="rect" href="what-happens-when-the-journal-size-is-exceeded.html">What happens when the journal size
  is exceeded</a></li><li><a shape="rect" href="what-is-the-difference-between-persistent-and-non-persistent-delivery.html">What is the difference between persistent and non-persistent delivery</a></li></ul>
+<ul class="childpages-macro"><li><a shape="rect" href="are-messages-read-directly-from-the-journal.html">Are messages read directly from the journal</a></li><li><a shape="rect" href="does-activemq-support-my-sql-database.html">Does ActiveMQ support my SQL database</a></li><li><a shape="rect" href="how-does-journaling-work-with-multiple-brokers.html">How does journaling work with multiple brokers</a></li><li><a shape="rect" href="how-does-the-journal-work.html">How does the journal work</a></li><li><a shape="rect" href="how-do-i-back-up-kahadb.html">How do I back-up KahaDB</a></li><li><a shape="rect" href="how-do-i-change-the-message-store-directory-for-an-embedded-broker.html">How do I change the message store directory for an embedded broker.</a></li><li><a shape="rect" href="is-there-a-specified-size-of-the-journal.html">Is there a specified size of the journal</a></li><li><a shape="rect" href="what-happens-when-the-journal-size-is-exceeded.html">What happens when the journal size
  is exceeded</a></li><li><a shape="rect" href="what-is-the-difference-between-persistent-and-non-persistent-delivery.html">What is the difference between persistent and non-persistent delivery</a></li></ul></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/persistence.html
==============================================================================
--- websites/production/activemq/content/persistence.html (original)
+++ websites/production/activemq/content/persistence.html Wed Jul  1 20:13:48 2015
@@ -62,7 +62,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -83,7 +83,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="Persistence-ActiveMQV5.9">ActiveMQ V5.9</h2><p>In ActiveMQ 5.9, the <a shape="rect" href="replicated-leveldb-store.html">Replicated LevelDB Store</a> is introduced. It handles using <a shape="rect" class="external-link" href="http://zookeeper.apache.org/">Apache ZooKeeper</a> to pick a master from a set of broker nodes configured to replicate single LevelDB Store. Then synchronizes all slave LevelDB Stores with the master keeps them up to date by replicating all updates to the master. This might become the preferred <a shape="rect" href="masterslave.html">Master Slave</a> configuration going forward.</p><h2 id="Persistence-ActiveMQV5.8">ActiveMQ V5.8</h2><p>In ActiveMQ 5.8, the <a shape="rect" href="leveldb-store.html">LevelDB Store</a> was introduced. The LevelDB Store is a file based persistence database. It has been optimized to provide even faster persistence than KahaDB. Although not yet the default message store, we expect this store implementation become the default i
 n future releases.</p><h2 id="Persistence-ActiveMQV5.3">ActiveMQ V5.3</h2><p>From 5.3 onwards - we recommend you use <a shape="rect" href="kahadb.html">KahaDB</a> - which offers improved scalability and recoverability over the <a shape="rect" href="amq-message-store.html">AMQ Message Store</a>.<br clear="none"> The <a shape="rect" href="amq-message-store.html">AMQ Message Store</a> which although faster than <a shape="rect" href="kahadb.html">KahaDB</a> - does not scales as well as <a shape="rect" href="kahadb.html">KahaDB</a> and recovery times take longer.</p><h2 id="Persistence-ActiveMQV4">ActiveMQ V4</h2><p>For long term persistence we recommend using JDBC coupled with our high performance journal. You can use just JDBC if you wish but its quite slow.</p><p>Our out of the box default configuration uses <a shape="rect" class="external-link" href="http://incubator.apache.org/derby/">Apache Derby</a> as the default database, which is easy to embed - but we support all the <a shape=
 "rect" href="jdbc-support.html">major SQL databases</a> - just reconfigure your JDBC configuration in the <a shape="rect" href="xml-configuration.html">Xml Configuration</a>.</p><h2 id="Persistence-Highperformancejournal-ActiveMQ4.x">High performance journal - ActiveMQ 4.x</h2><p>To achieve high performance of durable messaging in ACtiveMQ V4.x we strongly recommend you use our high performance journal - which is enabled by default. This works rather like a database; messages (and transcation commits/rollbacks and message acknowledgements) are written to the journal as fast as is humanly possible - then at intervals we checkpoint the journal to the long term persistence storage (in this case JDBC).</p><p>Its common when using queues for example that messages are consumed fairly shortly after being published; so you could publish 10,000 messages and only have a few messages outstanding - so when we checkpoint to the JDBC database, we often have only a small amount of messages to actu
 ally write to JDBC. Even if we have to write all the messages to the JDBC, we still get performance gains with the journal, since we can use a large transaction batch to insert the messages into the JDBC database to boost performance on the JDBC side.</p><p>Our journal is based on lots of the great work in the <a shape="rect" class="external-link" href="http://howl.objectweb.org/" rel="nofollow">Howl</a> project; we keep close ties to the Howl community. However since ActiveMQ has to handle arbitarily large message sizes, we've had to make our journal handle any size of message and so we don't use the fixed size record model that Howl uses.</p><h2 id="Persistence-Configuringpersistence">Configuring persistence</h2><p>For full explict control over configuration check out the <a shape="rect" href="xml-configuration.html">Xml Configuration</a>. However a quick way to set which persistence adapter to use is to set the following system property to be the class name of the PersistenceAdap
 ter implementation.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h2 id="Persistence-ActiveMQV5.9">ActiveMQ V5.9</h2><p>In ActiveMQ 5.9, the <a shape="rect" href="replicated-leveldb-store.html">Replicated LevelDB Store</a> is introduced. It handles using <a shape="rect" class="external-link" href="http://zookeeper.apache.org/">Apache ZooKeeper</a> to pick a master from a set of broker nodes configured to replicate single LevelDB Store. Then synchronizes all slave LevelDB Stores with the master keeps them up to date by replicating all updates to the master. This might become the preferred <a shape="rect" href="masterslave.html">Master Slave</a> configuration going forward.</p><h2 id="Persistence-ActiveMQV5.8">ActiveMQ V5.8</h2><p>In ActiveMQ 5.8, the <a shape="rect" href="leveldb-store.html">LevelDB Store</a> was introduced. The LevelDB Store is a file based persistence database. It has been optimized to provide even faster persistence than KahaDB. Although not yet the default message store, we expect this sto
 re implementation become the default in future releases.</p><h2 id="Persistence-ActiveMQV5.3">ActiveMQ V5.3</h2><p>From 5.3 onwards - we recommend you use <a shape="rect" href="kahadb.html">KahaDB</a> - which offers improved scalability and recoverability over the <a shape="rect" href="amq-message-store.html">AMQ Message Store</a>.<br clear="none"> The <a shape="rect" href="amq-message-store.html">AMQ Message Store</a> which although faster than <a shape="rect" href="kahadb.html">KahaDB</a> - does not scales as well as <a shape="rect" href="kahadb.html">KahaDB</a> and recovery times take longer.</p><h2 id="Persistence-ActiveMQV4">ActiveMQ V4</h2><p>For long term persistence we recommend using JDBC coupled with our high performance journal. You can use just JDBC if you wish but its quite slow.</p><p>Our out of the box default configuration uses <a shape="rect" class="external-link" href="http://incubator.apache.org/derby/">Apache Derby</a> as the default database, which is easy to em
 bed - but we support all the <a shape="rect" href="jdbc-support.html">major SQL databases</a> - just reconfigure your JDBC configuration in the <a shape="rect" href="xml-configuration.html">Xml Configuration</a>.</p><h2 id="Persistence-Highperformancejournal-ActiveMQ4.x">High performance journal - ActiveMQ 4.x</h2><p>To achieve high performance of durable messaging in ACtiveMQ V4.x we strongly recommend you use our high performance journal - which is enabled by default. This works rather like a database; messages (and transcation commits/rollbacks and message acknowledgements) are written to the journal as fast as is humanly possible - then at intervals we checkpoint the journal to the long term persistence storage (in this case JDBC).</p><p>Its common when using queues for example that messages are consumed fairly shortly after being published; so you could publish 10,000 messages and only have a few messages outstanding - so when we checkpoint to the JDBC database, we often have o
 nly a small amount of messages to actually write to JDBC. Even if we have to write all the messages to the JDBC, we still get performance gains with the journal, since we can use a large transaction batch to insert the messages into the JDBC database to boost performance on the JDBC side.</p><p>Our journal is based on lots of the great work in the <a shape="rect" class="external-link" href="http://howl.objectweb.org/" rel="nofollow">Howl</a> project; we keep close ties to the Howl community. However since ActiveMQ has to handle arbitarily large message sizes, we've had to make our journal handle any size of message and so we don't use the fixed size record model that Howl uses.</p><h2 id="Persistence-Configuringpersistence">Configuring persistence</h2><p>For full explict control over configuration check out the <a shape="rect" href="xml-configuration.html">Xml Configuration</a>. However a quick way to set which persistence adapter to use is to set the following system property to be
  the class name of the PersistenceAdapter implementation.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">activemq.persistenceAdapter
 </pre>
 </div></div><p>When running the broker from the command line, we look for the activemq.xml on the classpath unless you specify one to use. e.g.<br clear="none"> <strong>AMQ 4.x</strong></p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
@@ -160,7 +160,7 @@
 <pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">&lt;broker persistent="false"&gt;
 &lt;/broker&gt;
 </pre>
-</div></div><p>This will make the broker use the <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/apidocs/org/apache/activemq/store/memory/MemoryPersistenceAdapter.html">&lt;memoryPersistenceAdapter&gt;</a><br clear="none"> For an example of using a configuration URI see <a shape="rect" href="how-to-unit-test-jms-code.html">How to unit test JMS code</a></p>
+</div></div><p>This will make the broker use the <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/apidocs/org/apache/activemq/store/memory/MemoryPersistenceAdapter.html">&lt;memoryPersistenceAdapter&gt;</a><br clear="none"> For an example of using a configuration URI see <a shape="rect" href="how-to-unit-test-jms-code.html">How to unit test JMS code</a></p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/php.html
==============================================================================
--- websites/production/activemq/content/php.html (original)
+++ websites/production/activemq/content/php.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,9 +72,9 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="PHP-PHPSupport">PHP Support</h2>
+<div class="wiki-content maincontent"><h2 id="PHP-PHPSupport">PHP Support</h2>
 
-<p>A list of available clients for PHP (and other languages) is available at <a shape="rect" class="external-link" href="http://stomp.codehaus.org/implementations.html" rel="nofollow">here</a>.</p>
+<p>A list of available clients for PHP (and other languages) is available at <a shape="rect" class="external-link" href="http://stomp.codehaus.org/implementations.html" rel="nofollow">here</a>.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/pike.html
==============================================================================
--- websites/production/activemq/content/pike.html (original)
+++ websites/production/activemq/content/pike.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,9 +72,9 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="Pike-PikeSupport">Pike Support</h2>
+<div class="wiki-content maincontent"><h2 id="Pike-PikeSupport">Pike Support</h2>
 
-<p>For Pike support we recommend the <a shape="rect" class="external-link" href="http://stomp.codehaus.org/Pike" rel="nofollow">Pike Stomp Client</a></p>
+<p>For Pike support we recommend the <a shape="rect" class="external-link" href="http://stomp.codehaus.org/Pike" rel="nofollow">Pike Stomp Client</a></p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/pluggable-storage-lockers.html
==============================================================================
--- websites/production/activemq/content/pluggable-storage-lockers.html (original)
+++ websites/production/activemq/content/pluggable-storage-lockers.html Wed Jul  1 20:13:48 2015
@@ -60,7 +60,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -81,7 +81,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<p>With the 5.7.0 release of ActiveMQ the storage locking mechanism used by a persistence adapter is pluggable. This feature only applies to brokers configured in a shared storage master/slave topology. Prior to release 5.7.0 the storage locking mechanism (and thus master election) was dictated by the choice of persistence adapter. With the KahaDB persistence adapter, for example, the storage locking mechanism was based on a shared file lock. Similarly, the JDBC persistence adapter used a database backed storage lock.</p><p>Now that the choice of storage lock is divorced from that of the persistence adapter one can mix and match. Storage locker pluggability is made possible because all lockers must implement the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-broker/src/main/java/org/apache/activemq/broker/Locker.java?hb=true" rel="nofollow">Locker</a> interface. This interface makes it easy to implement your own storage lock
 er when you have special requirements. Of course, every persistence adapter still has its own default locker which works as before.</p><h2 id="Pluggablestoragelockers-Lockers">Lockers</h2><p>Every locker must implement the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-broker/src/main/java/org/apache/activemq/broker/Locker.java?hb=true" rel="nofollow">Locker</a> interface. The locker has the following properties:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Property Name</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>lockAcquireSleepInterval</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>10000</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Delay i
 nterval in milliseconds between lock acquire attempts</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>failIfLocked</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Should the start fail immediately if lock cannot be obtained</p></td></tr></tbody></table></div><h2 id="Pluggablestoragelockers-PersistenceAdapters">Persistence Adapters</h2><p>Every persistence adapter (or other broker service that wants to use locks) needs to implement the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-broker/src/main/java/org/apache/activemq/broker/Lockable.java?r=1383400" rel="nofollow">Lockable</a> interface. This adds the following properties:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Property Name</p></th><th colspan="1" rowspan="1" class="confluenceTh">
 <p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>useLock</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>can be used to turn off locking if necessary</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>lockKeepAlivePeriod</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>0</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>If bigger than 0, time period (in milliseconds) to keep lock alive</p></td></tr></tbody></table></div><h2 id="Pluggablestoragelockers-ExistingLockers">Existing Lockers</h2><h3 id="Pluggablestoragelockers-SharedFileLocker">Shared File Locker</h3><p>The Shared File Locker is the default locker for the KahaDB persistence adapter. It locks a file to ensure that only the broker holding the lock (the master) is granted access 
 to the message store.</p><p>Example:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><p>With the 5.7.0 release of ActiveMQ the storage locking mechanism used by a persistence adapter is pluggable. This feature only applies to brokers configured in a shared storage master/slave topology. Prior to release 5.7.0 the storage locking mechanism (and thus master election) was dictated by the choice of persistence adapter. With the KahaDB persistence adapter, for example, the storage locking mechanism was based on a shared file lock. Similarly, the JDBC persistence adapter used a database backed storage lock.</p><p>Now that the choice of storage lock is divorced from that of the persistence adapter one can mix and match. Storage locker pluggability is made possible because all lockers must implement the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-broker/src/main/java/org/apache/activemq/broker/Locker.java?hb=true" rel="nofollow">Locker</a> interface. This interface makes it e
 asy to implement your own storage locker when you have special requirements. Of course, every persistence adapter still has its own default locker which works as before.</p><h2 id="Pluggablestoragelockers-Lockers">Lockers</h2><p>Every locker must implement the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-broker/src/main/java/org/apache/activemq/broker/Locker.java?hb=true" rel="nofollow">Locker</a> interface. The locker has the following properties:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Property Name</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>lockAcquireSleepInterval</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>10000</p></td><td colspan="1" rowsp
 an="1" class="confluenceTd"><p>Delay interval in milliseconds between lock acquire attempts</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>failIfLocked</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Should the start fail immediately if lock cannot be obtained</p></td></tr></tbody></table></div><h2 id="Pluggablestoragelockers-PersistenceAdapters">Persistence Adapters</h2><p>Every persistence adapter (or other broker service that wants to use locks) needs to implement the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-broker/src/main/java/org/apache/activemq/broker/Lockable.java?r=1383400" rel="nofollow">Lockable</a> interface. This adds the following properties:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Property Name</p></th><th colspan
 ="1" rowspan="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>useLock</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>can be used to turn off locking if necessary</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>lockKeepAlivePeriod</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>0</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>If bigger than 0, time period (in milliseconds) to keep lock alive</p></td></tr></tbody></table></div><h2 id="Pluggablestoragelockers-ExistingLockers">Existing Lockers</h2><h3 id="Pluggablestoragelockers-SharedFileLocker">Shared File Locker</h3><p>The Shared File Locker is the default locker for the KahaDB persistence adapter. It locks a file to ensure that only the broker holding th
 e lock (the master) is granted access to the message store.</p><p>Example:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: xml; gutter: false; theme: Default" style="font-size:12px;">&lt;persistenceAdapter&gt;
 	&lt;kahaDB directory = "target/activemq-data"&gt;
 		&lt;locker&gt;
@@ -120,7 +120,7 @@
 		&lt;/locker&gt;
 	&lt;/kahaDB&gt;
 &lt;/persistenceAdapter&gt;</pre>
-</div></div><p>To see the complete list of attributes and SQL statements that can be overridden see the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/Statements.java?hb=true" rel="nofollow">Statements</a> class. When the KahaDB persistence adapter is configured to use the <code>lease-database-locker</code> you must configure the broker to use your own IO exception handler as neither the <code>DefaultIOExceptionHandler</code> nor the <code>JDBCIOExceptionHandler</code> will work correctly with this combination. See <a shape="rect" href="configurable-ioexception-handling.html">Configurable IOException Handlers</a> for details on how to write a handler.</p><p>As of ActiveMQ 5.11, however, the <code>JDBCIOExceptionHandler</code> has been deprecated. It has been replaced by the <code>org.apache.activemq.util.LeaseLockerIOExceptionHandler</code> that will work with any persi
 stence adapter that supports pluggable storage lockers (whether or not one is configured).</p><p>&#160;</p><p>&#160;</p>
+</div></div><p>To see the complete list of attributes and SQL statements that can be overridden see the <a shape="rect" class="external-link" href="https://fisheye6.atlassian.com/browse/activemq/trunk/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/Statements.java?hb=true" rel="nofollow">Statements</a> class. When the KahaDB persistence adapter is configured to use the <code>lease-database-locker</code> you must configure the broker to use your own IO exception handler as neither the <code>DefaultIOExceptionHandler</code> nor the <code>JDBCIOExceptionHandler</code> will work correctly with this combination. See <a shape="rect" href="configurable-ioexception-handling.html">Configurable IOException Handlers</a> for details on how to write a handler.</p><p>As of ActiveMQ 5.11, however, the <code>JDBCIOExceptionHandler</code> has been deprecated. It has been replaced by the <code>org.apache.activemq.util.LeaseLockerIOExceptionHandler</code> that will work with any persi
 stence adapter that supports pluggable storage lockers (whether or not one is configured).</p><p>&#160;</p><p>&#160;</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/privacy-policy.html
==============================================================================
--- websites/production/activemq/content/privacy-policy.html (original)
+++ websites/production/activemq/content/privacy-policy.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,7 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<p>Information about your use of this website is collected using server access logs and a tracking cookie. The collected information consists of the following:</p>
+<div class="wiki-content maincontent"><p>Information about your use of this website is collected using server access logs and a tracking cookie. The collected information consists of the following:</p>
 
 <ol><li>The IP address from which you access the website;</li><li>The type of browser and operating system you use to access our site;</li><li>The date and time you access our site;</li><li>The pages you visit; and</li><li>The addresses of pages from where you followed a link to our site.</li></ol>
 
@@ -81,7 +81,7 @@
 
 <p>We use the gathered information to help us make our site more useful to visitors and to better understand how and when our site is used. We do not track or collect personally identifiable information or associate gathered data with any personally identifying information from other sources.</p>
 
-<p>By using this website, you consent to the collection of this data in the manner and for the purpose described above.</p>
+<p>By using this website, you consent to the collection of this data in the manner and for the purpose described above.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/producer-flow-control.html
==============================================================================
--- websites/production/activemq/content/producer-flow-control.html (original)
+++ websites/production/activemq/content/producer-flow-control.html Wed Jul  1 20:13:48 2015
@@ -61,7 +61,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -82,7 +82,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="ProducerFlowControl-ProducerFlowControl">Producer Flow Control</h2><p>In ActiveMQ 4.x flow control was implemented using TCP flow control. The underlying network connection of throttled consumers was suspended to enforce flow control limits. This strategy is very efficient but can lead to deadlocks if there are multiple producers and consumers sharing the same connection.</p><p>As of ActiveMQ 5.0, we can now individually flow control each producer on a shared connection without having to suspend the entire connection. By 'flow control' we mean that if the broker detects that the memory limit for the destination, or the temp- or file-store limits for the broker, have been exceeded, then the flow of messages can be slowed down. The producer will be either blocked until resources are available <em>or</em> will receive a JMSException: this behaviour is configurable and described in the section below on <code>&lt;systemUsage&gt;</code>.</p><p>It's worth noting that the default <c
 ode>&lt;systemUsage&gt;</code> settings will cause the producer to <em>block</em> when the <code>memoryLimit</code> or <code>&lt;systemUsage&gt;</code> limits are reached: this blocking behaviour is sometimes misinterpreted as a 'hung producer', when in fact the producer is simply diligently waiting until space is available.</p><ul><li>Messages that are sent synchronously will automatically use per producer flow control; this applies generally to persistent messages which are sent synchronously <em>unless</em> you enable the <code>useAsyncSend</code> flag.</li></ul><ul><li>Producers that use <a shape="rect" href="async-sends.html">Async Sends</a> - generally speaking, producers of non-persistent messages - don't bother waiting for any acknowledgement from the broker; so, if a memory limit has been exceeded, you will <em>not</em> get notfied. If you do want to be aware of broker limits being exceeded, you will need to configure the ProducerWindowSize connection option so that even as
 ync messages are flow controlled per producer.</li></ul><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h2 id="ProducerFlowControl-ProducerFlowControl">Producer Flow Control</h2><p>In ActiveMQ 4.x flow control was implemented using TCP flow control. The underlying network connection of throttled consumers was suspended to enforce flow control limits. This strategy is very efficient but can lead to deadlocks if there are multiple producers and consumers sharing the same connection.</p><p>As of ActiveMQ 5.0, we can now individually flow control each producer on a shared connection without having to suspend the entire connection. By 'flow control' we mean that if the broker detects that the memory limit for the destination, or the temp- or file-store limits for the broker, have been exceeded, then the flow of messages can be slowed down. The producer will be either blocked until resources are available <em>or</em> will receive a JMSException: this behaviour is configurable and described in the section below on <code>&lt;systemUsage&gt;</code>.</p><p
 >It's worth noting that the default <code>&lt;systemUsage&gt;</code> settings will cause the producer to <em>block</em> when the <code>memoryLimit</code> or <code>&lt;systemUsage&gt;</code> limits are reached: this blocking behaviour is sometimes misinterpreted as a 'hung producer', when in fact the producer is simply diligently waiting until space is available.</p><ul><li>Messages that are sent synchronously will automatically use per producer flow control; this applies generally to persistent messages which are sent synchronously <em>unless</em> you enable the <code>useAsyncSend</code> flag.</li></ul><ul><li>Producers that use <a shape="rect" href="async-sends.html">Async Sends</a> - generally speaking, producers of non-persistent messages - don't bother waiting for any acknowledgement from the broker; so, if a memory limit has been exceeded, you will <em>not</em> get notfied. If you do want to be aware of broker limits being exceeded, you will need to configure the ProducerWindow
 Size connection option so that even async messages are flow controlled per producer.</li></ul><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">ActiveMQConnectionFactory connctionFactory = ...
 connctionFactory.setProducerWindowSize(1024000);
 </pre>
@@ -132,7 +132,7 @@ connctionFactory.setProducerWindowSize(1
     &lt;/tempUsage&gt;
   &lt;/systemUsage&gt;
 &lt;/systemUsage&gt;</pre>
-</div></div><p>You can set limits of memory for <code>NON_PERSISTENT</code> messages, disk storage for <code>PERSITENT</code> messages and total usage for temporary messages, the broker will use before it slowdown producers. <em>Using the default settings shown above, the broker will block the <code>send()</code> call until some messages are consumed and space becomes available on the broker.</em> The default values are shown above, you will probably need to increase these values for your environment.</p>
+</div></div><p>You can set limits of memory for <code>NON_PERSISTENT</code> messages, disk storage for <code>PERSITENT</code> messages and total usage for temporary messages, the broker will use before it slowdown producers. <em>Using the default settings shown above, the broker will block the <code>send()</code> call until some messages are consumed and space becomes available on the broker.</em> The default values are shown above, you will probably need to increase these values for your environment.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/projects-using-activemq.html
==============================================================================
--- websites/production/activemq/content/projects-using-activemq.html (original)
+++ websites/production/activemq/content/projects-using-activemq.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,8 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-Apache Camel is a POJO based routing and mediation framework
-	<ul><li><a shape="rect" class="external-link" href="http://incubator.apache.org/cxf/">Apache CXF</a> is a JAX-WS client and web services framework</li><li><a shape="rect" class="external-link" href="http://geronimo.apache.org/">Apache Geronimo</a> is the J2EE server project of the Apache Software Foundation.</li><li><a shape="rect" class="external-link" href="http://incubator.apache.org/servicemix/">Apache ServiceMix</a> an open source Enterprise Service Bus (ESB) based around the Java Business Integration specification (JSR 208). ServiceMix consists of a JBI container and component suite, massive <a shape="rect" class="external-link" href="http://incubator.apache.org/servicemix/Components">connectivity</a> with complete integration with Spring and Geronimo as well as supporting straight through, SEDA and clustered message flows, smart routing and transformations and orchestration via BPEL.</li><li><a shape="rect" class="external-link" href="http://portals.apache.org/jetspeed-2/">A
 pache Jetspeed</a> is the Apache enterprise portal.</li><li><a shape="rect" class="external-link" href="http://directory.apache.org/">Apache Directory</a> is the Apache LDAP and Directory services project.</li><li><a shape="rect" class="external-link" href="http://openejb.apache.org">Apache TomEE</a> ActiveMQ is the default JMS provider.</li><li><a shape="rect" class="external-link" href="http://lingo.codehaus.org/" rel="nofollow">Lingo</a> a remoting framework for <a shape="rect" class="external-link" href="http://www.springframework.org/" rel="nofollow">Spring</a> which use JMS and ActiveMQ by default.</li><li><a shape="rect" class="external-link" href="http://www.eclipse.org/" rel="nofollow">Eclipse</a> is integrating ActiveMQ into the real time editing features for team development</li><li><a shape="rect" class="external-link" href="http://activecluster.codehaus.org/" rel="nofollow">ActiveCluster</a> is a clustering API with an implementation which uses JMS and ActiveMQ by defau
 lt.</li><li><a shape="rect" class="external-link" href="http://activesoap.codehaus.org/" rel="nofollow">ActiveSOAP</a> is a lightweight and fast SOAP stack with pluggable transports</li><li><a shape="rect" class="external-link" href="http://www.open-im.net/en/" rel="nofollow">OpenIM Java Jabber &#194;&#174; Server</a> is an open-source Java implementation (BSD License) of Jabber Instant Messager</li><li><a shape="rect" class="external-link" href="http://mule.codehaus.org/" rel="nofollow">Mule</a> is an Enterprise Service Bus (ESB) messaging framework. It is a scalable, highly distributable object broker that can seamlessly handle interactions with services and applications using disparate transport and messaging technologies.</li><li><a shape="rect" class="external-link" href="http://planb.cloudnine.net.nz/" rel="nofollow">plan/b</a> a distributed backup system</li><li><a shape="rect" class="external-link" href="http://www.hermesjms.com/" rel="nofollow">Hermes</a> is a Swing applica
 tion that allows you to interact with JMS providers. Hermes will work with any JMS enabled transport making it easy to browse or seach queues and topics, copy (via drag and drop) messages and delete them.</li><li><a shape="rect" class="external-link" href="http://sourceforge.net/projects/springside/" rel="nofollow">SpringSide</a> Pragmatic Enterprise Application KickStart and Common Library Stack. Use Spring Framework as core,provided a enterprise application develop platform and demo the best practice in enterprise application.</li></ul>
+<div class="wiki-content maincontent"><ul><li><a shape="rect" class="external-link" href="http://activemq.apache.org/camel/">Apache Camel</a> is a POJO based routing and mediation framework</li><li><a shape="rect" class="external-link" href="http://incubator.apache.org/cxf/">Apache CXF</a> is a JAX-WS client and web services framework</li><li><a shape="rect" class="external-link" href="http://geronimo.apache.org/">Apache Geronimo</a> is the J2EE server project of the Apache Software Foundation.</li><li><a shape="rect" class="external-link" href="http://incubator.apache.org/servicemix/">Apache ServiceMix</a> an open source Enterprise Service Bus (ESB) based around the Java Business Integration specification (JSR 208). ServiceMix consists of a JBI container and component suite, massive <a shape="rect" class="external-link" href="http://incubator.apache.org/servicemix/Components">connectivity</a> with complete integration with Spring and Geronimo as well as supporting straight through,
  SEDA and clustered message flows, smart routing and transformations and orchestration via BPEL.</li><li><a shape="rect" class="external-link" href="http://portals.apache.org/jetspeed-2/">Apache Jetspeed</a> is the Apache enterprise portal.</li><li><a shape="rect" class="external-link" href="http://directory.apache.org/">Apache Directory</a> is the Apache LDAP and Directory services project.</li><li><a shape="rect" class="external-link" href="http://openejb.apache.org">Apache TomEE</a> ActiveMQ is the default JMS provider.</li><li><a shape="rect" class="external-link" href="http://lingo.codehaus.org/" rel="nofollow">Lingo</a> a remoting framework for <a shape="rect" class="external-link" href="http://www.springframework.org/" rel="nofollow">Spring</a> which use JMS and ActiveMQ by default.</li><li><a shape="rect" class="external-link" href="http://www.eclipse.org/" rel="nofollow">Eclipse</a> is integrating ActiveMQ into the real time editing features for team development</li><li><a 
 shape="rect" class="external-link" href="http://activecluster.codehaus.org/" rel="nofollow">ActiveCluster</a> is a clustering API with an implementation which uses JMS and ActiveMQ by default.</li><li><a shape="rect" class="external-link" href="http://activesoap.codehaus.org/" rel="nofollow">ActiveSOAP</a> is a lightweight and fast SOAP stack with pluggable transports</li><li><a shape="rect" class="external-link" href="http://www.open-im.net/en/" rel="nofollow">OpenIM Java Jabber &#194;&#174; Server</a> is an open-source Java implementation (BSD License) of Jabber Instant Messager</li><li><a shape="rect" class="external-link" href="http://mule.codehaus.org/" rel="nofollow">Mule</a> is an Enterprise Service Bus (ESB) messaging framework. It is a scalable, highly distributable object broker that can seamlessly handle interactions with services and applications using disparate transport and messaging technologies.</li><li><a shape="rect" class="external-link" href="http://planb.cloudni
 ne.net.nz/" rel="nofollow">plan/b</a> a distributed backup system</li><li><a shape="rect" class="external-link" href="http://www.hermesjms.com/" rel="nofollow">Hermes</a> is a Swing application that allows you to interact with JMS providers. Hermes will work with any JMS enabled transport making it easy to browse or seach queues and topics, copy (via drag and drop) messages and delete them.</li><li><a shape="rect" class="external-link" href="http://sourceforge.net/projects/springside/" rel="nofollow">SpringSide</a> Pragmatic Enterprise Application KickStart and Common Library Stack. Use Spring Framework as core,provided a enterprise application develop platform and demo the best practice in enterprise application.</li></ul></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/proposed-c-client-architecture.html
==============================================================================
--- websites/production/activemq/content/proposed-c-client-architecture.html (original)
+++ websites/production/activemq/content/proposed-c-client-architecture.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,6 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
+<div class="wiki-content maincontent">
 <p>4/16/06 - Attaching wire_formats.pdf - a first cut at defining all of the commands for both openwire an stomp.&#160; Working toward an architecture that will support both.&#160;</p>
 
 <p>///////////////////////////////////////////////&#160;</p>
@@ -82,7 +83,7 @@
 
 <p>&#160;Regards,</p>
 
-<p>Nathan Mittler&#160;</p>
+<p>Nathan Mittler&#160;</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/protocols.html
==============================================================================
--- websites/production/activemq/content/protocols.html (original)
+++ websites/production/activemq/content/protocols.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,9 +72,9 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<p>Apache ActiveMQ is a message broker which supports multiple wire level protocols for maximum interoperability.</p>
+<div class="wiki-content maincontent"><p>Apache ActiveMQ is a message broker which supports multiple wire level protocols for maximum interoperability.</p>
 
-<ul class="childpages-macro"><li><a shape="rect" href="amqp.html">AMQP</a></li><li><a shape="rect" href="mqtt.html">MQTT</a></li><li><a shape="rect" href="openwire.html">OpenWire</a></li><li><a shape="rect" href="rest.html">REST</a></li><li><a shape="rect" href="rss-and-atom.html">RSS and Atom</a></li><li><a shape="rect" href="stomp.html">Stomp</a></li><li><a shape="rect" href="wsif.html">WSIF</a></li><li><a shape="rect" href="ws-notification.html">WS Notification</a></li><li><a shape="rect" href="xmpp.html">XMPP</a></li></ul>
+<ul class="childpages-macro"><li><a shape="rect" href="amqp.html">AMQP</a></li><li><a shape="rect" href="mqtt.html">MQTT</a></li><li><a shape="rect" href="openwire.html">OpenWire</a></li><li><a shape="rect" href="rest.html">REST</a></li><li><a shape="rect" href="rss-and-atom.html">RSS and Atom</a></li><li><a shape="rect" href="stomp.html">Stomp</a></li><li><a shape="rect" href="wsif.html">WSIF</a></li><li><a shape="rect" href="ws-notification.html">WS Notification</a></li><li><a shape="rect" href="xmpp.html">XMPP</a></li></ul></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/pure-master-slave.html
==============================================================================
--- websites/production/activemq/content/pure-master-slave.html (original)
+++ websites/production/activemq/content/pure-master-slave.html Wed Jul  1 20:13:48 2015
@@ -61,7 +61,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -82,7 +82,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h3 id="PureMasterSlave-PureMasterSlave">Pure Master Slave</h3>
+<div class="wiki-content maincontent"><h3 id="PureMasterSlave-PureMasterSlave">Pure Master Slave</h3>
 
 <div class="confluence-information-macro confluence-information-macro-warning"><p class="title">This feature has been deprecated and will be removed in version 5.8</p><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluence-information-macro-body">
 <p>This feature will be removed in 5.8 as it has not evolved to be production ready. <br clear="none">
@@ -168,7 +168,7 @@ To identify a broker as a slave - there
     &lt;/transportConnectors&gt;
   &lt;/broker&gt;
 </pre>
-</div></div>
+</div></div></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/python.html
==============================================================================
--- websites/production/activemq/content/python.html (original)
+++ websites/production/activemq/content/python.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,11 +72,11 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<h2 id="Python-PythonSupport">Python Support</h2>
+<div class="wiki-content maincontent"><h2 id="Python-PythonSupport">Python Support</h2>
 
 <p>For Python support we recommend the <a shape="rect" class="external-link" href="http://stomp.github.com/implementations.html" rel="nofollow">Python Stomp Client</a></p>
 
-<p>Alternatively, you can try <a shape="rect" class="external-link" href="http://code.google.com/p/pyactivemq/" rel="nofollow">pyactivemq</a>, which is a Python wrapper for the ActiveMQ C++ Library. Because the ActiveMQ C++ library supports both Stomp and Openwire, pyactivemq does too.</p>
+<p>Alternatively, you can try <a shape="rect" class="external-link" href="http://code.google.com/p/pyactivemq/" rel="nofollow">pyactivemq</a>, which is a Python wrapper for the ActiveMQ C++ Library. Because the ActiveMQ C++ library supports both Stomp and Openwire, pyactivemq does too.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/qos.html
==============================================================================
--- websites/production/activemq/content/qos.html (original)
+++ websites/production/activemq/content/qos.html Wed Jul  1 20:13:48 2015
@@ -51,7 +51,7 @@
       <div>
 
 <!-- Banner -->
-<p></p><p>
+<p>
 	</p><div id="asf_logo">
 	<div id="activemq_logo">
             <a shape="rect" style="float:left; width:280px;display:block;text-indent:-5000px;text-decoration:none;line-height:60px; margin-top:10px; margin-left:100px;" href="http://activemq.apache.org" title="The most popular and powerful open source Message Broker">ActiveMQ</a> &#8482;
@@ -72,12 +72,15 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
+<div class="wiki-content maincontent">
+
+
 <p>QoS is a MOM abbreviation of the term <em>Quality of Service</em>. There are many different kinds of messaging with different qualities of service such as</p>
 
 <ul><li>topics versus queues</li><li>durable messaging versus <em>reliable</em> (some buffering takes place but if a consumer is down long enough the messages are discarded)</li><li>message timeout</li></ul>
 
 
-<p>etc.</p>
+<p>etc.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">