activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r956228 [36/40] - in /websites/production/activemq/content: ./ 2004/08/17/ 2005/06/06/ 2005/07/13/ 2006/03/23/ 2007/04/18/ 2008/04/28/ 2009/04/17/ 2010/06/29/ cache/ cms/ nms/
Date Sat, 27 Jun 2015 21:23:58 GMT
Modified: websites/production/activemq/content/sjsas-with-genericjmsra.html
==============================================================================
--- websites/production/activemq/content/sjsas-with-genericjmsra.html (original)
+++ websites/production/activemq/content/sjsas-with-genericjmsra.html Sat Jun 27 21:23:55 2015
@@ -32,16 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- SJSAS with GenericJMSRA
@@ -100,7 +90,7 @@
 
 <p>In order to use genericra you need to first create a resource adapter config using asadmin (Command line tools of SJSAS).</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 asadmin create-resource-adapter-config
   --property
       SupportsXA=false
@@ -123,21 +113,21 @@ asadmin create-resource-adapter-config
 
 <p>You should note that, the above command should executed as one single line and no space around ':'. Just like:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 asadmin create-resource-adapter-config --property SupportsXA=false:ConnectionFactoryProperties=brokerURL\\=tcp\\://127.0.0.1\\:61616 myapp#genericra
 ]]></script>
 </div></div>
 
 <p>Under DOS prompt, you should use ONLY ONE '/' to do espcape, like this.</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 asadmin create-resource-adapter-config --property SupportsXA=false:ConnectionFactoryProperties=brokerURL\=tcp\://127.0.0.1\:61616 myapp#genericra
 ]]></script>
 </div></div>
 
 <p>Package your application, genericra.rar and activemq dependencies in one single EAR. The structure of the EAR should like this:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
    lib/activemq-core-4.1.1.jar
    lib/log4j-1.2.13.jar
    lib/commons-logging-1.1.jar
@@ -152,7 +142,7 @@ asadmin create-resource-adapter-config -
 
 <p>Inside the mymodules.jar (where I put my MDB), the sun-ejb-jar.xml should look like this:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
 &lt;!DOCTYPE sun-ejb-jar
   PUBLIC &quot;-//Sun Microsystems, Inc.//DTD Application Server 8.1 EJB 2.1//EN&quot;
@@ -186,7 +176,7 @@ asadmin create-resource-adapter-config -
 
 <p>And the application.xml should look like this:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
 &lt;application
     xmlns=&quot;http://java.sun.com/xml/ns/javaee&quot;
@@ -208,7 +198,7 @@ asadmin create-resource-adapter-config -
 
 <p>Deploy the genericra:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 asadmin deploy --name myapp myapp.ear
 ]]></script>
 </div></div>
@@ -216,7 +206,7 @@ asadmin deploy --name myapp myapp.ear
 
 <p>Create connection pool. Run the following command in one single line:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 asadmin create-connector-connection-pool
   --raname myapp#genericra
   --connectiondefinition javax.jms.QueueConnectionFactory
@@ -228,7 +218,7 @@ asadmin create-connector-connection-pool
 
 <p>Create connection factory admin object. Run the following command in one single line, note that, "jms/SimpleQueueConnectionFactory" need to match in your sun-ejb-jar.xml:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 asadmin create-connector-resource
   --poolname ActiveMQQueueConnectionFactoryPool
   jms/SimpleQueueConnectionFactory

Modified: websites/production/activemq/content/slow-consumer-handling.html
==============================================================================
--- websites/production/activemq/content/slow-consumer-handling.html (original)
+++ websites/production/activemq/content/slow-consumer-handling.html Sat Jun 27 21:23:55 2015
@@ -32,17 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushPlain.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- Slow Consumer Handling
@@ -100,7 +89,7 @@
 <p>This strategy uses a constant limit for all consumers (above their prefetch size). e.g.</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;constantPendingMessageLimitStrategy limit=&quot;50&quot;/&gt;
 ]]></script>
 </div></div>
@@ -110,7 +99,7 @@
 <p>This strategy calculates the maximum number of pending messages using a multiplier of the consumers prefetch size. So you could for example keep around 2.5 times the prefetch count for each consumer.</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;prefetchRatePendingMessageLimitStrategy multiplier=&quot;2.5&quot;/&gt;
 ]]></script>
 </div></div>
@@ -126,7 +115,7 @@
 <p>We have a MessageEvictionStrategy which is used to decide which message should be evicted on a slow consumer. The default implementation is</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;oldestMessageEvictionStrategy/&gt;
 ]]></script>
 </div></div>
@@ -134,7 +123,7 @@
 <p>But you can write your own to use some application specific way of choosing. e.g. if you are sending market data price updates, you may wish to find an older price value, which might not be the oldest message. The implementation of this eviction strategy could be set (since version 5.6) using</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;uniquePropertyMessageEvictionStrategy propertyName=&quot;STOCK&quot; /&gt;
 ]]></script>
 </div></div>
@@ -144,7 +133,7 @@
 <p>Another option could be to use the oldest message with the lowest priority message - so if you have some high priority messages, evict the lower priority messages first even if they are newer.</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;oldestMessageWithLowestPriorityEvictionStrategy/&gt;
 ]]></script>
 </div></div>
@@ -154,7 +143,7 @@
 <p>The following example shows an ActiveMQ broker configuration file. Notice that for topics in the <strong>PRICES.&gt;</strong> wildcard range the <strong>pendingMessageLimitStrategy</strong> property is set to only keep around 10 messages for each consumer above their prefetch buffer size.</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;beans 
   xmlns=&quot;http://www.springframework.org/schema/beans&quot; 
   xmlns:amq=&quot;http://activemq.apache.org/schema/core&quot;

Modified: websites/production/activemq/content/slow-consumers.html
==============================================================================
--- websites/production/activemq/content/slow-consumers.html (original)
+++ websites/production/activemq/content/slow-consumers.html Sat Jun 27 21:23:55 2015
@@ -76,14 +76,8 @@
 <h2 id="SlowConsumers-BlockedTransport">Blocked Transport</h2>
 
 <p>when using TCP there can be occasions when a network outage can result in a blocked write. This can cause the entire broker to freeze - and the socket may never be unblocked. Currently we have a Thread that checks for blocked sockets - using a sweep protocol to detect if there are connections that are blocked writing for more than a configurable period. This can work but there is no way to unblock the calling thread that is associated with the send down the socket (which will be the publishing thread in non-durable topics).</p>
-    <div class="aui-message warning shadowed information-macro">
-                            <span class="aui-icon icon-warning">Icon</span>
-                <div class="message-content">
-                            
-<p>Need to check if closing out the socket unblock the send.</p>
-                    </div>
-    </div>
-
+<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>Need to check if closing out the socket unblock the send.</p></div></div>
 <p>TCP transports also use the InactivityMontor class as TransportFilter which detects dead sockets by forcing KeepAliveInfo commands periodically through the transport when it is idle.  Therefore, the InactivityMontor can assume that if packets are not being received periodically, it means that the transport is dead and transport exception is generated.</p>
 
 <h2 id="SlowConsumers-BlockedConsumer">Blocked Consumer</h2>

Modified: websites/production/activemq/content/slow-networks-drop-large-messages.html
==============================================================================
--- websites/production/activemq/content/slow-networks-drop-large-messages.html (original)
+++ websites/production/activemq/content/slow-networks-drop-large-messages.html Sat Jun 27 21:23:55 2015
@@ -32,15 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- Slow networks drop large messages
@@ -81,14 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent">    <div class="aui-message warning shadowed information-macro">
-                    <p class="title">Note</p>
-                            <span class="aui-icon icon-warning">Icon</span>
-                <div class="message-content">
-                            <p> This article only applies to older versions of ActiveMQ, i.e. 5.3 and 5.4.0. From 5.4.2 onwards this issue has been adressed in the bugs <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/AMQ-2511">AMQ-2511</a> and <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/AMQ-2088">AMQ-2088</a>. </p>
-                    </div>
-    </div>
-
+<div class="wiki-content maincontent"><div class="confluence-information-macro confluence-information-macro-note"><p class="title">Note</p><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p> This article only applies to older versions of ActiveMQ, i.e. 5.3 and 5.4.0. From 5.4.2 onwards this issue has been adressed in the bugs <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/AMQ-2511">AMQ-2511</a> and <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/AMQ-2088">AMQ-2088</a>. </p></div></div>
 <p>You may experience problems sending large messages using networks across slow links.</p>
 
 <p>The symptoms are usually that the network connection will be dropped and continuously re-established.</p>
@@ -103,7 +87,7 @@ Ideally the activity flag would get clea
 <p>e.g. configure your network connection like this:</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
 
 &lt;beans xmlns=&quot;http://activemq.org/config/1.0&quot;&gt;

Modified: websites/production/activemq/content/source.html
==============================================================================
--- websites/production/activemq/content/source.html (original)
+++ websites/production/activemq/content/source.html Sat Jun 27 21:23:55 2015
@@ -72,14 +72,7 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent">    <div class="aui-message problem shadowed information-macro">
-                    <p class="title">Warning</p>
-                            <span class="aui-icon icon-problem">Icon</span>
-                <div class="message-content">
-                            <p>Apache ActiveMQ code repository was moved to git, The old svn repo will not be updated.</p>
-                    </div>
-    </div>
-<h1 id="Source-ActiveMQ5">ActiveMQ 5</h1><h2 id="Source-WebBrowsingofthegitRepo">Web Browsing of the git Repo</h2><p>To browse via the web:</p><div class="panel" style="border-width: 1px;"><div class="panelContent">
+<div class="wiki-content maincontent"><div class="confluence-information-macro confluence-information-macro-warning"><p class="title">Warning</p><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Apache ActiveMQ code repository was moved to git, The old svn repo will not be updated.</p></div></div><h1 id="Source-ActiveMQ5">ActiveMQ 5</h1><h2 id="Source-WebBrowsingofthegitRepo">Web Browsing of the git Repo</h2><p>To browse via the web:</p><div class="panel" style="border-width: 1px;"><div class="panelContent">
 <p><a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf?p=activemq.git">https://git-wip-us.apache.org/repos/asf?p=activemq.git</a></p>
 </div></div><h2 id="Source-CheckingoutfromthegitRepo">Checking out from the git Repo</h2><div class="panel" style="border-width: 1px;"><div class="panelContent">
 <p>git clone <a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf/activemq.git">https://git-wip-us.apache.org/repos/asf/activemq.git</a></p>

Modified: websites/production/activemq/content/spring-support.html
==============================================================================
--- websites/production/activemq/content/spring-support.html (original)
+++ websites/production/activemq/content/spring-support.html Sat Jun 27 21:23:55 2015
@@ -32,15 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- Spring Support
@@ -82,21 +73,21 @@
         <tr>
         <td valign="top" width="100%">
 <div class="wiki-content maincontent"><p>We fully support Spring for configuration of the JMS client side as well as for configuring the JMS Message Broker.<br clear="none"> There is a great <a shape="rect" class="external-link" href="http://codedependents.com/2009/10/16/efficient-lightweight-jms-with-spring-and-activemq/" rel="nofollow">article</a> on using Spring with ActiveMQ - I'd recommend reading it first.</p><h2 id="SpringSupport-ConfiguringtheJMSclient">Configuring the JMS client</h2><p>To configure an ActiveMQ JMS client in Spring it is just a simple matter of configuring an instance of ActiveMQConnectionFactory within a standard Spring XML configuration file like any other bean. There are <a shape="rect" class="external-link" href="https://svn.apache.org/repos/asf/activemq/trunk/activemq-unit-tests/src/test/java/org/apache/activemq/spring/">several examples and test cases</a> available and <a shape="rect" class="external-link" href="https://svn.apache.org/repos/asf/activem
 q/trunk/activemq-unit-tests/src/test/resources/org/apache/activemq/xbean/spring.xml">this one</a> shows how to construct an ActiveMQConnectionFactory in Spring which is then passed into a Spring JmsTemplate for use by some POJOs.</p><p>e.g. the following fragment of XML shows us creating a JMS connection factory for ActiveMQ connecting to a remote broker on a specific host name and port.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;bean id=&quot;jmsFactory&quot; class=&quot;org.apache.activemq.ActiveMQConnectionFactory&quot;&gt;
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;bean id=&quot;jmsFactory&quot; class=&quot;org.apache.activemq.ActiveMQConnectionFactory&quot;&gt;
     &lt;property name=&quot;brokerURL&quot;&gt;
       &lt;value&gt;tcp://localhost:61616&lt;/value&gt;
     &lt;/property&gt;
   &lt;/bean&gt;
 ]]></script>
 </div></div><p>The following shows how to use Zeroconf to discover the available brokers to connect to.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;bean id=&quot;jmsFactory&quot; class=&quot;org.apache.activemq.ActiveMQConnectionFactory&quot;&gt;
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;bean id=&quot;jmsFactory&quot; class=&quot;org.apache.activemq.ActiveMQConnectionFactory&quot;&gt;
     &lt;property name=&quot;brokerURL&quot;&gt;
       &lt;value&gt;zeroconf://_activemq.broker.development.&lt;/value&gt;
     &lt;/property&gt;
   &lt;/bean&gt;
 ]]></script>
 </div></div><p>From 1.1 of ActiveMQ onwards you can also use JNDI to configure ActiveMQ within Spring. <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/activemq/trunk/activemq-unit-tests/src/test/resources/spring-jndi.xml">This example</a> shows how to configure Spring using ActiveMQ's <a shape="rect" href="jndi-support.html">JNDI Support</a>.</p><h3 id="SpringSupport-UsingSpring">Using Spring</h3><p>If you are using the new <a shape="rect" class="external-link" href="http://static.springframework.org/spring/docs/2.0.x/reference/xsd-config.html" rel="nofollow">XML Schema-based configuration</a> of Spring 2.0 you can embed the ActiveMQ broker XML inside any regular Spring.xml file without requiring the above factory bean. e.g. here is an example of a regular Spring XML file in Spring 2.0 which also configures a broker.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;beans 
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;beans 
   xmlns=&quot;http://www.springframework.org/schema/beans&quot; 
   xmlns:amq=&quot;http://activemq.apache.org/schema/core&quot;
   xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
@@ -113,7 +104,7 @@
 &lt;/beans&gt;
 ]]></script>
 </div></div><p>This allows you to configure JMS artifacts like destinations and connection factories together with the entire broker.</p><h2 id="SpringSupport-WorkingwithSpring'sJmsTemplate">Working with Spring's JmsTemplate</h2><p>Spring supports a handy abstraction, JmsTemplate, which allows you to hide some of the lower level JMS details when sending messages etc.</p><p>Please be aware that there are a number of <a shape="rect" href="jmstemplate-gotchas.html">JmsTemplate Gotchas</a> to be careful of.</p><p>One thing to bear in mind with JmsTemplate is that by default it will create a new connection, session, producer for each message sent - then close them all down again. This is very inefficient! It is done like this to work in EJB containers which tend to use a special ConnectionFactory which does pooling.</p><p>If you are not using a JCA container to manage your JMS connections, we recommend you use our pooling JMS connection provider, (org.apache.activemq.pool.PooledConnectio
 nFactory) from the <code>activemq-pool</code> library, which will pool the JMS resources to work efficiently with Spring's JmsTemplate or with EJBs.</p><p>e.g.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;!-- a pooling based JMS provider --&gt;
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;!-- a pooling based JMS provider --&gt;
   &lt;bean id=&quot;jmsFactory&quot; class=&quot;org.apache.activemq.pool.PooledConnectionFactory&quot; destroy-method=&quot;stop&quot;&gt;
     &lt;property name=&quot;connectionFactory&quot;&gt;
       &lt;bean class=&quot;org.apache.activemq.ActiveMQConnectionFactory&quot;&gt;

Modified: websites/production/activemq/content/sqlserver.html
==============================================================================
--- websites/production/activemq/content/sqlserver.html (original)
+++ websites/production/activemq/content/sqlserver.html Sat Jun 27 21:23:55 2015
@@ -32,15 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- SQLServer
@@ -88,7 +79,7 @@
 
 <p>Here is an example of a configuration for SQLServer kindly supplied by Ning Li</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;persistenceAdapter&gt;
      &lt;journaledJDBC journalLogFiles=&quot;5&quot;
 dataDirectory=&quot;../activemq-data&quot; dataSource=&quot;#mssql-ds&quot;&gt;
@@ -114,7 +105,7 @@ value=&quot;com.microsoft.jdbc.sqlserver
 
 <p>Here is an example of the configuration for Microsoft SQL Server 2005 drivers</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;persistenceAdapter&gt;
   &lt;journaledJDBC journalLogFiles=&quot;5&quot; dataDirectory=&quot;../activemq-data&quot; dataSource=&quot;#mssql-ds&quot;&gt;
     &lt;adapter&gt;&lt;imageBasedJDBCAdaptor/&gt;&lt;/adapter&gt;
@@ -135,7 +126,7 @@ value=&quot;com.microsoft.jdbc.sqlserver
 
 <p>Here's an example of the configuration for the jTDS drivers:</p>
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 &lt;bean id=&quot;mssql-ds&quot; class=&quot;net.sourceforge.jtds.jdbcx.JtdsDataSource&quot;&gt;
    &lt;property name=&quot;serverName&quot; value=&quot;SERVERNAME&quot;/&gt;
    &lt;property name=&quot;portNumber&quot; value=&quot;PORTNUMBER&quot;/&gt;

Modified: websites/production/activemq/content/ssl-transport-reference.html
==============================================================================
--- websites/production/activemq/content/ssl-transport-reference.html (original)
+++ websites/production/activemq/content/ssl-transport-reference.html Sat Jun 27 21:23:55 2015
@@ -32,16 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- SSL Transport Reference
@@ -90,7 +80,7 @@
 ssl://localhost:61616?transport.needClientAuth=true
 </pre>
 </div></div><p>&#160;</p><h4 id="SSLTransportReference-Clientconfiguration">Client configuration</h4><p>JMS clients can simply use the <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/5.9.0/apidocs/org/apache/activemq/ActiveMQSslConnectionFactory.html">ActiveMQSslConnectionFactory</a> together with an ssl:// broker url as the following Spring configuration illustrates</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ 
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[ 
 &lt;bean id=&quot;AMQJMSConnectionFactory&quot; class=&quot;org.apache.activemq.ActiveMQSslConnectionFactory&quot;&gt;
   &lt;property name=&quot;trustStore&quot; value=&quot;/path/to/truststore.ts&quot; /&gt;
   &lt;property name=&quot;trustStorePassword&quot; value=&quot;password&quot; /&gt;
@@ -102,18 +92,12 @@ ssl://localhost:61616?transport.needClie
 &lt;/bean&gt; 
 ]]></script>
 </div></div><p>Unless the broker's SSL transport is configured for transport.needClientAuth=true, the client won't need a keystore but requires a truststore in order to validate the broker's certificate.</p><p>Similar to the broker transport configuration you can pass on SSL transport options using <strong>?socket.XXX</strong>, such as</p><pre>ssl://localhost:61616?socket.enabledCipherSuites=SSL_RSA_WITH_RC4_128_SHA,SSL_DH_anon_WITH_3DES_EDE_CBC_SHA</pre><h4 id="SSLTransportReference-OtherLinks">Other Links</h4><ul><li><a shape="rect" href="how-do-i-use-ssl.html">How do I use SSL</a></li></ul><p>You can also turn on SSL debug informations this way by adding:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[-Djavax.net.debug=ssl
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[-Djavax.net.debug=ssl
 ]]></script>
-</div></div><p>this way you can see what goes wrong and why you get connections closed.</p>    <div class="aui-message problem shadowed information-macro">
-                    <p class="title">"Be careful with multicast discovery"</p>
-                            <span class="aui-icon icon-problem">Icon</span>
-                <div class="message-content">
-                            <p>If your XML configuration file contains the following and you wish to use SSL</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[       &lt;networkConnector uri=&quot;multicast://default&quot;/&gt;
+</div></div><p>this way you can see what goes wrong and why you get connections closed.</p><div class="confluence-information-macro confluence-information-macro-warning"><p class="title">"Be careful with multicast discovery"</p><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>If your XML configuration file contains the following and you wish to use SSL</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[       &lt;networkConnector uri=&quot;multicast://default&quot;/&gt;
 ]]></script>
-</div></div><p>Then you will currently need to comment that out.<br clear="none"> The reason is to prevent ActiveMQ atempting to connect to itself - if you do this with a self-signed<br clear="none"> certificate, you will get a constant spam of certificate_unknown<br clear="none"> stacktraces to the console, as the broker is not configured with the<br clear="none"> truststore,</p>
-                    </div>
-    </div></div>
+</div></div><p>Then you will currently need to comment that out.<br clear="none"> The reason is to prevent ActiveMQ atempting to connect to itself - if you do this with a self-signed<br clear="none"> certificate, you will get a constant spam of certificate_unknown<br clear="none"> stacktraces to the console, as the broker is not configured with the<br clear="none"> truststore,</p></div></div></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/statisticsplugin.html
==============================================================================
--- websites/production/activemq/content/statisticsplugin.html (original)
+++ websites/production/activemq/content/statisticsplugin.html Sat Jun 27 21:23:55 2015
@@ -32,16 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- StatisticsPlugin
@@ -83,14 +73,14 @@
         <tr>
         <td valign="top" width="100%">
 <div class="wiki-content maincontent"><p>Beginning in ActiveMQ 5.3, a statistics plugin is included that can be used to retrieve statistics from the broker or its destinations. Note that the message must contain a <code>replyTo</code> header (the <code>jmsReplyTo</code> header if you're using JMS) else the message will be ignored. The <code>replyTo</code> header must contain the name of the destination from which you want to retrieve the stats message(s). The statistics message is a <code>MapMessage</code> populated with statistics for the target (i.e., a broker or a destination).</p><p>To retrieve stats for the broker, just send an empty message to the destination named <code>ActiveMQ.Statistics.Broker</code> along with a <code>replyTo</code> header. To retrieve stats for a destination, just send an empty message to the destination named <code>ActiveMQ.Statistics.Destination.&lt;destination-name&gt;</code> or <code>ActiveMQ.Statistics.Destination.&lt;wildcard-expression&gt;</code> 
 along with a <code>replyTo</code> header. If many destinations match a given wildcard expression, one stats message for each destination will be sent to the <code>replyTo</code> destination.</p><p>To configure ActiveMQ to use the statistics plugin, just add the following to the ActiveMQ XML configuration:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;broker ...&gt;
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;broker ...&gt;
   &lt;plugins&gt;
     &lt;statisticsBrokerPlugin/&gt;
   &lt;/plugins&gt;
 &lt;/broker&gt;
 ]]></script>
 </div></div><p>The statistics plugin looks for messages sent to particular destinations. Below is an example of using the statistics plugin to grab stats from a broker:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Queue replyTo = session.createTemporaryQueue();
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[Queue replyTo = session.createTemporaryQueue();
 MessageConsumer consumer = session.createConsumer(replyTo);
 
 String queueName = &quot;ActiveMQ.Statistics.Broker&quot;;
@@ -111,7 +101,7 @@ for (Enumeration e = reply.getMapNames()
 </div></div><p>The output from the code above is shown below:</p><div class="panel" style="border-width: 1px;"><div class="panelContent">
 <p>vm=vm://localhost<br clear="none"> memoryUsage=0<br clear="none"> storeUsage=3330<br clear="none"> tempPercentUsage=0<br clear="none"> ssl=<br clear="none"> openwire=tcp://localhost:50059<br clear="none"> brokerId=ID:bigmac-50057-1253605065511-0:0<br clear="none"> consumerCount=2<br clear="none"> brokerName=localhost<br clear="none"> expiredCount=0<br clear="none"> dispatchCount=1<br clear="none"> maxEnqueueTime=5.0<br clear="none"> storePercentUsage=0<br clear="none"> dequeueCount=0<br clear="none"> inflightCount=1<br clear="none"> messagesCached=0<br clear="none"> tempLimit=107374182400<br clear="none"> averageEnqueueTime=5.0<br clear="none"> stomp+ssl=<br clear="none"> memoryPercentUsage=0<br clear="none"> size=10<br clear="none"> tempUsage=0<br clear="none"> producerCount=1<br clear="none"> minEnqueueTime=5.0<br clear="none"> dataDirectory=/Users/rajdavies/dev/projects/activemq/activemq-core/activemq-data<br clear="none"> enqueueCount=10<br clear="none"> stomp=<br clear="none
 "> storeLimit=107374182400<br clear="none"> memoryLimit=67108864</p>
 </div></div><p>Similarly, to query the statistics for a destination just send a message to the destination name prepended with <code>ActiveMQ.Statistics.Destination</code>. For example, to retrieve the statistics for a queue whose name is TEST.FOO, send an empty message to the queue named <code>ActiveMQ.Statistics.Destination.TEST.FOO</code>. Below is an example:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Queue replyTo = session.createTemporaryQueue();
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[Queue replyTo = session.createTemporaryQueue();
 MessageConsumer consumer = session.createConsumer(replyTo);
 
 Queue testQueue = session.createQueue(&quot;TEST.FOO&quot;);
@@ -137,7 +127,7 @@ for (Enumeration e = reply.getMapNames()
 </div></div><p>The output from the code above is shown below:</p><div class="panel" style="border-width: 1px;"><div class="panelContent">
 <p>memoryUsage=0<br clear="none"> dequeueCount=0<br clear="none"> inflightCount=0<br clear="none"> messagesCached=0<br clear="none"> averageEnqueueTime=0.0<br clear="none"> destinationName=queue://TEST.FOO<br clear="none"> size=1<br clear="none"> memoryPercentUsage=0<br clear="none"> producerCount=0<br clear="none"> consumerCount=0<br clear="none"> minEnqueueTime=0.0<br clear="none"> maxEnqueueTime=0.0<br clear="none"> dispatchCount=0<br clear="none"> expiredCount=0<br clear="none"> enqueueCount=1<br clear="none"> memoryLimit=67108864</p>
 </div></div><p>You can also use wildcards in the queue name, too. This will result in a separate stats message for every destination that is matched by the wildcard. Very handy indeed.</p><h3 id="StatisticsPlugin-Subscriptionsstatistics">Subscriptions statistics</h3><p>Since 5.6.0 you can also retrieve statistics on all queue and topic subscriptions. All you need to do it send an empty message to the destination named <code>ActiveMQ.Statistics. Subscription</code> along with a <code>replyTo</code> header.&#160; The response will come in the form of one or more messages each containing the statistics for exactly one subscription on the Broker.&#160;</p><p>Below is an example of using the statistics plugin to grab stats from a broker:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[Queue replyTo = session.createTemporaryQueue();
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[Queue replyTo = session.createTemporaryQueue();
 MessageConsumer consumer = session.createConsumer(replyTo);
 
 String queueName = &quot;ActiveMQ.Statistics.Subscription&quot;;

Modified: websites/production/activemq/content/stomp.html
==============================================================================
--- websites/production/activemq/content/stomp.html (original)
+++ websites/production/activemq/content/stomp.html Sat Jun 27 21:23:55 2015
@@ -32,16 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushXml.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- Stomp
@@ -82,65 +72,30 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><p>ActiveMQ supports the <a shape="rect" class="external-link" href="http://stomp.github.com/" rel="nofollow">Stomp</a> protocol and the Stomp - JMS mapping. This makes it easy to write a client in pure <a shape="rect" href="ruby.html">Ruby</a>, <a shape="rect" href="perl.html">Perl</a>, <a shape="rect" href="python.html">Python</a> or <a shape="rect" href="php.html">PHP</a> for working with ActiveMQ.</p><p>Please see the <a shape="rect" class="external-link" href="http://stomp.codehaus.org/" rel="nofollow">Stomp site</a> for more details</p>    <div class="aui-message hint shadowed information-macro">
-                    <p class="title">Spec Compliance</p>
-                            <span class="aui-icon icon-hint">Icon</span>
-                <div class="message-content">
-                            <p>ActiveMQ v5.6 implements the Stomp v1.1 spec except for allowing spaces at the beginning or end of message header keys, they are preserved in the header values however. In future releases this will not be the case, clients should be updated and user code checked to ensure that spaces in the headers are there intentionally and not as a accident or a client "feature".</p>
-                    </div>
-    </div>
-<h3 id="Stomp-EnablingtheActiveMQBrokerforStomp">Enabling the ActiveMQ Broker for Stomp</h3><p>Its very easy to enable ActiveMQ for Stomp. Just add a connector to the broker using the stomp URL.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;transportConnectors&gt;
+<div class="wiki-content maincontent"><p>ActiveMQ supports the <a shape="rect" class="external-link" href="http://stomp.github.com/" rel="nofollow">Stomp</a> protocol and the Stomp - JMS mapping. This makes it easy to write a client in pure <a shape="rect" href="ruby.html">Ruby</a>, <a shape="rect" href="perl.html">Perl</a>, <a shape="rect" href="python.html">Python</a> or <a shape="rect" href="php.html">PHP</a> for working with ActiveMQ.</p><p>Please see the <a shape="rect" class="external-link" href="http://stomp.codehaus.org/" rel="nofollow">Stomp site</a> for more details</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Spec Compliance</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>ActiveMQ v5.6 implements the Stomp v1.1 spec except for allowing spaces at the beginning or end of message header keys, they are preserved in the
  header values however. In future releases this will not be the case, clients should be updated and user code checked to ensure that spaces in the headers are there intentionally and not as a accident or a client "feature".</p></div></div><h3 id="Stomp-EnablingtheActiveMQBrokerforStomp">Enabling the ActiveMQ Broker for Stomp</h3><p>Its very easy to enable ActiveMQ for Stomp. Just add a connector to the broker using the stomp URL.</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;transportConnectors&gt;
    &lt;transportConnector name=&quot;stomp&quot; uri=&quot;stomp://localhost:61613&quot;/&gt;
 &lt;/transportConnectors&gt;
 ]]></script>
 </div></div><p>To see a full example, try <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/activemq/trunk/assembly/src/release/example/conf/activemq.xml">this XML</a>. If you save that XML as foo.xml then you can run stomp via the command line as</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[activemq xbean:foo.xml
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[activemq xbean:foo.xml
 ]]></script>
 </div></div><p>For more help see <a shape="rect" href="run-broker.html">Run Broker</a>.</p><h3 id="Stomp-TheStompWireFormat">The Stomp Wire Format</h3><p>Stomp uses a text based wire format that can be configured with the following options. &#160;All options can be configured on a Brokers transport bind URI.</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Parameter 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>maxDataLength</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>104857600</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Maximum size of the message body (content) that can be sent.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxFrameSize</p></td><td colspan="1" rowspan="1" class="conflu
 enceTd"><p>MAX_LONG</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>(v5.12.0) Maximum frame size that can be sent. A Stomp frame includes a command, optional headers, and an optional body. Can help help prevent OOM DOS attacks</p></td></tr></tbody></table></div><p>All options must be prepended with&#160;<code>wireFormat</code>&#160;in order to take effect. Without this proper formatting, the option will have zero effect.</p><h4 id="Stomp-ExampleWireFormatConfiguration">Example Wire Format Configuration<br clear="none">&#160;</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[     &lt;transportConnector name=&quot;stomp+ssl&quot; uri=&quot;stomp+ssl://localhost:61612?wireFormat.maxFrameSize=1000000&quot;/&gt;]]></script>
-</div></div><h3 id="Stomp-Security">Security</h3><p>Stomp implementation fully supports an <a shape="rect" href="security.html">ActiveMQ security</a> mechanism. This means that the <code>CONNECT</code> command will return an <code>ERROR</code> frame on unsuccessful authentication. Also, the authorization policies will be applied when you try to access (read/write) certain destinations. If you use synchronous operations (by using <a shape="rect" class="external-link" href="http://stomp.github.com/stomp-specification-1.1.html#RECEIPT" rel="nofollow">receipts</a>), you can expect an <code>ERROR</code> frame in case of unauthorized access attempt. In other case, operations will be discarded but the client will not be informed of errors. This also stands for all other errors that can happen on the broker side.</p>    <div class="aui-message hint shadowed information-macro">
-                    <p class="title">Availability</p>
-                            <span class="aui-icon icon-hint">Icon</span>
-                <div class="message-content">
-                            <p>Stomp security implementation is available from version 5.1 onwards.</p>
-                    </div>
-    </div>
-    <div class="aui-message success shadowed information-macro">
-                    <p class="title">SSL</p>
-                            <span class="aui-icon icon-success">Icon</span>
-                <div class="message-content">
-                            <p>For additional security, you can use Stomp over SSL as described in the following section.</p>
-                    </div>
-    </div>
-<h3 id="Stomp-EnablingStompoverNIO">Enabling Stomp over NIO</h3><p>For better scalability (and performance) you might want to run Stomp protocol over NIO transport. To do that just use <code>stomp+nio</code> transport prefix instead of <code>stomp</code>. For example, add the following transport configuration in your XML file</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[     &lt;transportConnector name=&quot;stomp+nio&quot; uri=&quot;stomp+nio://localhost:61612&quot;/&gt;
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[     &lt;transportConnector name=&quot;stomp+ssl&quot; uri=&quot;stomp+ssl://localhost:61612?wireFormat.maxFrameSize=1000000&quot;/&gt;]]></script>
+</div></div><h3 id="Stomp-Security">Security</h3><p>Stomp implementation fully supports an <a shape="rect" href="security.html">ActiveMQ security</a> mechanism. This means that the <code>CONNECT</code> command will return an <code>ERROR</code> frame on unsuccessful authentication. Also, the authorization policies will be applied when you try to access (read/write) certain destinations. If you use synchronous operations (by using <a shape="rect" class="external-link" href="http://stomp.github.com/stomp-specification-1.1.html#RECEIPT" rel="nofollow">receipts</a>), you can expect an <code>ERROR</code> frame in case of unauthorized access attempt. In other case, operations will be discarded but the client will not be informed of errors. This also stands for all other errors that can happen on the broker side.</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Availability</p><span class="aui-icon aui-icon-small aui-iconfont-info conflu
 ence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Stomp security implementation is available from version 5.1 onwards.</p></div></div><div class="confluence-information-macro confluence-information-macro-tip"><p class="title">SSL</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>For additional security, you can use Stomp over SSL as described in the following section.</p></div></div><h3 id="Stomp-EnablingStompoverNIO">Enabling Stomp over NIO</h3><p>For better scalability (and performance) you might want to run Stomp protocol over NIO transport. To do that just use <code>stomp+nio</code> transport prefix instead of <code>stomp</code>. For example, add the following transport configuration in your XML file</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;transportConnector name=&quot;stomp+nio&quot; uri=&quot;stomp+nio://localhost:61612&quot;/&gt;
 ]]></script>
-</div></div><p>This transport use <a shape="rect" class="external-link" href="http://activemq.apache.org/configuring-transports.html#ConfiguringTransports-TheNIOTransport">NIO transport</a> underneath and will generally use much less threads than standard connector. This connector can help if you want to use <a shape="rect" class="external-link" href="http://activemq.apache.org/how-do-i-configure-10s-of-1000s-of-queues-in-a-single-broker-.html">large number of queues</a></p>    <div class="aui-message hint shadowed information-macro">
-                    <p class="title">Availability</p>
-                            <span class="aui-icon icon-hint">Icon</span>
-                <div class="message-content">
-                            <p>Stomp Nio connector implementation is available in version 5.3 and up.</p>
-                    </div>
-    </div>
-<h3 id="Stomp-EnablingStompoverSSL">Enabling Stomp over SSL</h3><p>It's easy to configure ActiveMQ to use Stomp over SSL connection. All you have to do is use <code>stomp+ssl</code> transport prefix instead of <code>stomp</code>. For example, add the following transport configuration in your XML file</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[     &lt;transportConnector name=&quot;stomp+ssl&quot; uri=&quot;stomp+ssl://localhost:61612&quot;/&gt;
+</div></div><p>This transport use <a shape="rect" class="external-link" href="http://activemq.apache.org/configuring-transports.html#ConfiguringTransports-TheNIOTransport">NIO transport</a> underneath and will generally use much less threads than standard connector. This connector can help if you want to use <a shape="rect" class="external-link" href="http://activemq.apache.org/how-do-i-configure-10s-of-1000s-of-queues-in-a-single-broker-.html">large number of queues</a></p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Availability</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Stomp Nio connector implementation is available in version 5.3 and up.</p></div></div><h3 id="Stomp-EnablingStompoverSSL">Enabling Stomp over SSL</h3><p>It's easy to configure ActiveMQ to use Stomp over SSL connection. All you have to do is use <code>stom
 p+ssl</code> transport prefix instead of <code>stomp</code>. For example, add the following transport configuration in your XML file</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;transportConnector name=&quot;stomp+ssl&quot; uri=&quot;stomp+ssl://localhost:61612&quot;/&gt;
 ]]></script>
 </div></div><ul><li>For more details on using SSL with ActiveMQ see the following article (<a shape="rect" class="external-link" href="http://activemq.apache.org/how-do-i-use-ssl.html">How do I use SSL</a>).</li><li>Example of using Stomp over SSL on the client side could be found in the <a shape="rect" class="external-link" href="http://stomp.fusesource.org/documentation/php/book.html#SSL" rel="nofollow">PHP Stomp client example </a>.</li></ul><h3 id="Stomp-Heart-beatgraceperiods">Heart-beat grace periods</h3><p>The STOMP protocol (version 1.1 or greater) <a shape="rect" class="external-link" href="http://stomp.github.io/stomp-specification-1.2.html#Heart-beating" rel="nofollow">defines the concept of heart beats</a> as a method by which a client and broker can determine the health of the underlying TCP connection between them.</p><p>ActiveMQ offers support for STOMP defined heart beating provided the client is using version 1.1 (or greater) of the protocol. Prior to ActiveMQ 5.9.0
 , however, the enforcement of the 'read' heart-beat timeout (that is, a heart-beat sent from the client to the broker) was strict. In other words, the broker was intolerant of late arriving read heart-beats from the client. This resulted in the broker concluding that the client was no longer present causing it to close its side of the client's connection when the client failed to honor it's configured heart-beat settings.</p><p>As of version 5.9.0 the timeout enforcement for read heart-beats is now configurable via a new transport option,<br clear="none"> <strong>transport.hbGracePeriodMultiplier</strong>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;transportConnectors&gt;
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;transportConnectors&gt;
    &lt;transportConnector name=&quot;stomp&quot;
 uri=&quot;stomp://localhost:61613?transport.hbGracePeriodMultiplier=1.5&quot;/&gt;
 &lt;/transportConnectors&gt;
 ]]></script>
-</div></div><p>This multiplier is used to calculate the effective read heart-beat timeout the broker will enforce for each client's connection. The multiplier is applied to the read-timeout interval the client specifies in its CONNECT frame:</p><p>&lt;client specified read heart-beat interval&gt; * &lt;grace periodmultiplier&gt; == &lt;broker enforced read heart-beat timeout interval&gt;</p><p>For backward compatibility, if the grace period multiplier is not configured the default enforcement mode remains strict, e.g., transport.hbGracePeriodMultiplier=1.0. Attempts to configure the grace period multiplier to a value less than, or equal to 1.0 will be silently ignored.</p><p>STOMP clients that wish to be tolerant of late arriving heart-beats from the broker must implement their own solution for doing so.</p><ul><li>Please check the <a shape="rect" class="external-link" href="http://stomp.github.io/stomp-specification-1.2.html#Heart-beating" rel="nofollow">STOMP specification</a> for
  the details on heart-beating</li><li>The JIRA that implemented this: <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/AMQ-4674">ActiveMQ 5.x does not support the notion of a grace-period for heart beats as supported by the STOMP protocol</a></li></ul><h3 id="Stomp-WorkingwithDestinationswithStomp">Working with Destinations with Stomp</h3><p>Note that the prefix in stomp <strong>/queue/</strong> or <strong>/topic/</strong> is removed from the string before passing it to ActiveMQ as a JMS destination. Also note that the default separator in MOM systems is . (DOT). So <strong>FOO.BAR</strong> is the normal syntax of a MOM queue - the Stomp equivalent would be <strong>/queue/FOO.BAR</strong></p>    <div class="aui-message problem shadowed information-macro">
-                    <p class="title">Be careful about starting destinations with /</p>
-                            <span class="aui-icon icon-problem">Icon</span>
-                <div class="message-content">
-                            <p>If in Stomp world you use <strong>/queue/foo/bar</strong> then in a JMS world the queue would be called <strong>foo/bar</strong> not <strong>/foo/bar</strong>.</p>
-                    </div>
-    </div>
-<h3 id="Stomp-PersistenceofStompmessages">Persistence of Stomp messages</h3><p>By default, Stomp produced messages are set to non-persistent. You have to explicitly tell your Stomp library to add "persistent:true" to all SEND requests, for any messages that you want to persist across ActiveMQ restarts. This is the opposite of the default for JMS submitted messages.</p><h3 id="Stomp-WorkingwithJMSText/BytesMessagesandStomp">Working with JMS Text/Bytes Messages and Stomp</h3><p>Stomp is a very simple protocol - that's part of the beauty of it! As such, it does not have knowledge of JMS messages such as TextMessages or BytesMessages. The protocol does however support a content-length header. To provide more robust interaction between Stomp and JMS clients, ActiveMQ keys off of the inclusion of this header to determine what message type to create when sending from Stomp to JMS. The logic is simple:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rows
 pan="1" class="confluenceTh"><p>Inclusion of content-length header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Resulting Message</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>BytesMessage</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>TextMessage</p></td></tr></tbody></table></div><p>This same logic can be followed when going from JMS to Stomp, as well. A Stomp client could be written to key off of the inclusion of the content-length header to determine what type of message structure to provide to the user.</p><h3 id="Stomp-Messagetransformations">Message transformations</h3><p>The <code>transformation</code> message header on <code>SEND</code> and <code>SUBSCRIBE</code> messages could be used to instruct ActiveMQ to transform messages from text to the format of your desire. Currently, ActiveMQ com
 es with a transformer that can transform XML/JSON text to Java objects, but you can add your own transformers as well.</p><p>Here's a quick example of how to use built-in transformer (taken from test cases)</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[    private String xmlObject = &quot;&lt;pojo&gt;\n&quot; 
+</div></div><p>This multiplier is used to calculate the effective read heart-beat timeout the broker will enforce for each client's connection. The multiplier is applied to the read-timeout interval the client specifies in its CONNECT frame:</p><p>&lt;client specified read heart-beat interval&gt; * &lt;grace periodmultiplier&gt; == &lt;broker enforced read heart-beat timeout interval&gt;</p><p>For backward compatibility, if the grace period multiplier is not configured the default enforcement mode remains strict, e.g., transport.hbGracePeriodMultiplier=1.0. Attempts to configure the grace period multiplier to a value less than, or equal to 1.0 will be silently ignored.</p><p>STOMP clients that wish to be tolerant of late arriving heart-beats from the broker must implement their own solution for doing so.</p><ul><li>Please check the <a shape="rect" class="external-link" href="http://stomp.github.io/stomp-specification-1.2.html#Heart-beating" rel="nofollow">STOMP specification</a> for
  the details on heart-beating</li><li>The JIRA that implemented this: <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/AMQ-4674">ActiveMQ 5.x does not support the notion of a grace-period for heart beats as supported by the STOMP protocol</a></li></ul><h3 id="Stomp-WorkingwithDestinationswithStomp">Working with Destinations with Stomp</h3><p>Note that the prefix in stomp <strong>/queue/</strong> or <strong>/topic/</strong> is removed from the string before passing it to ActiveMQ as a JMS destination. Also note that the default separator in MOM systems is . (DOT). So <strong>FOO.BAR</strong> is the normal syntax of a MOM queue - the Stomp equivalent would be <strong>/queue/FOO.BAR</strong></p><div class="confluence-information-macro confluence-information-macro-warning"><p class="title">Be careful about starting destinations with /</p><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluen
 ce-information-macro-body"><p>If in Stomp world you use <strong>/queue/foo/bar</strong> then in a JMS world the queue would be called <strong>foo/bar</strong> not <strong>/foo/bar</strong>.</p></div></div><h3 id="Stomp-PersistenceofStompmessages">Persistence of Stomp messages</h3><p>By default, Stomp produced messages are set to non-persistent. You have to explicitly tell your Stomp library to add "persistent:true" to all SEND requests, for any messages that you want to persist across ActiveMQ restarts. This is the opposite of the default for JMS submitted messages.</p><h3 id="Stomp-WorkingwithJMSText/BytesMessagesandStomp">Working with JMS Text/Bytes Messages and Stomp</h3><p>Stomp is a very simple protocol - that's part of the beauty of it! As such, it does not have knowledge of JMS messages such as TextMessages or BytesMessages. The protocol does however support a content-length header. To provide more robust interaction between Stomp and JMS clients, ActiveMQ keys off of the inc
 lusion of this header to determine what message type to create when sending from Stomp to JMS. The logic is simple:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Inclusion of content-length header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Resulting Message</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>BytesMessage</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>TextMessage</p></td></tr></tbody></table></div><p>This same logic can be followed when going from JMS to Stomp, as well. A Stomp client could be written to key off of the inclusion of the content-length header to determine what type of message structure to provide to the user.</p><h3 id="Stomp-Messagetransformations">Message transformations</h3><p>The <code>transform
 ation</code> message header on <code>SEND</code> and <code>SUBSCRIBE</code> messages could be used to instruct ActiveMQ to transform messages from text to the format of your desire. Currently, ActiveMQ comes with a transformer that can transform XML/JSON text to Java objects, but you can add your own transformers as well.</p><p>Here's a quick example of how to use built-in transformer (taken from test cases)</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[    private String xmlObject = &quot;&lt;pojo&gt;\n&quot; 
             + &quot;  &lt;name&gt;Dejan&lt;/name&gt;\n&quot;
             + &quot;  &lt;city&gt;Belgrade&lt;/city&gt;\n&quot; 
             + &quot;&lt;/pojo&gt;&quot;;
@@ -168,25 +123,18 @@ uri=&quot;stomp://localhost:61613?transp
         stompConnection.sendFrame(frame);
     }     
 ]]></script>
-</div></div>    <div class="aui-message hint shadowed information-macro">
-                    <p class="title">Dependencies</p>
-                            <span class="aui-icon icon-hint">Icon</span>
-                <div class="message-content">
-                            <p>ActiveMQ uses <a shape="rect" class="external-link" href="http://xstream.codehaus.org" rel="nofollow">XStream</a> for its transformation needs. Since it's the optional dependency you have to add it to broker's classpath by putting the appropriate JAR into the <code>lib/</code> folder. Additionally, if you plan to use JSON transformations you have to add <a shape="rect" class="external-link" href="http://jettison.codehaus.org/" rel="nofollow">Jettison</a> JSON parser to the classpath.</p>
-                    </div>
-    </div>
-<p>In order to create your own transformer, you have to do the following:</p><ol><li>Build your transformer by implementing a <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/activemq-core/apidocs/org/apache/activemq/transport/stomp/FrameTranslator.html">FrameTranslator</a> interface</li><li>Associate it with the appropriate header value by creating a file named as a value you want to use in the <code>META-INF/services/org/apache/activemq/transport/frametranslator/</code> folder of your JAR which will contain the value <code>class=<em>full classname of your transformer</em></code></li></ol><p>For example the built-in transformer contains the following value</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[class=org.apache.activemq.transport.stomp.XStreamFrameTranslator]]></script>
+</div></div><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Dependencies</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>ActiveMQ uses <a shape="rect" class="external-link" href="http://xstream.codehaus.org" rel="nofollow">XStream</a> for its transformation needs. Since it's the optional dependency you have to add it to broker's classpath by putting the appropriate JAR into the <code>lib/</code> folder. Additionally, if you plan to use JSON transformations you have to add <a shape="rect" class="external-link" href="http://jettison.codehaus.org/" rel="nofollow">Jettison</a> JSON parser to the classpath.</p></div></div><p>In order to create your own transformer, you have to do the following:</p><ol><li>Build your transformer by implementing a <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/activemq-core/a
 pidocs/org/apache/activemq/transport/stomp/FrameTranslator.html">FrameTranslator</a> interface</li><li>Associate it with the appropriate header value by creating a file named as a value you want to use in the <code>META-INF/services/org/apache/activemq/transport/frametranslator/</code> folder of your JAR which will contain the value <code>class=<em>full classname of your transformer</em></code></li></ol><p>For example the built-in transformer contains the following value</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[class=org.apache.activemq.transport.stomp.XStreamFrameTranslator]]></script>
 </div></div><p>in the <code>META-INF/services/org/apache/activemq/transport/frametranslator/jms-xml</code> file.</p><h3 id="Stomp-Debugging"><span style="line-height: 1.5625;">Debugging</span></h3><p>In case you want to debug Stomp communication between broker and clients you should configure the Stomp connector with the <code>trace</code> parameter, like this:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;transportConnectors&gt;
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;transportConnectors&gt;
    &lt;transportConnector name=&quot;stomp&quot; uri=&quot;stomp://localhost:61613?trace=true&quot;/&gt;
 &lt;/transportConnectors&gt;
 ]]></script>
 </div></div><p>This will instruct the broker to trace all packets it sends and receives.</p><p>Furthermore, you have to enable tracing for the appropriate log. You can achieve that by adding the following to your <code>conf/log4j.properties</code></p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[log4j.logger.org.apache.activemq.transport.stomp=TRACE
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[log4j.logger.org.apache.activemq.transport.stomp=TRACE
 ]]></script>
 </div></div><p>Finally, you will probably want to keep these messages in the separate file instead of polluting the standard broker's log. You can achieve that with the following log4j configuration:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[log4j.appender.stomp=org.apache.log4j.RollingFileAppender
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[log4j.appender.stomp=org.apache.log4j.RollingFileAppender
 log4j.appender.stomp.file=${activemq.base}/data/stomp.log
 log4j.appender.stomp.maxFileSize=1024KB
 log4j.appender.stomp.maxBackupIndex=5
@@ -203,7 +151,7 @@ frame IO ONLY (e.g., no heart beat messa
 #log4j.additivity.org.apache.activemq.transport.stomp.StompIO=false
 ]]></script>
 </div></div><p>After this, all your Stomp packets will be logged to the <code>data/stomp.log</code></p><h3 id="Stomp-JavaAPI">Java API</h3><p>Since version 5.2, there is a simple Java Stomp API distributed with ActiveMQ. Note that this API is provided purely for testing purposes and you should always consider using standard JMS API from Java instead of this one. The following code snippet provides a simple example of using this API:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[StompConnection connection = new StompConnection();
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[StompConnection connection = new StompConnection();
 connection.open(&quot;localhost&quot;, 61613);
 		
 connection.connect(&quot;system&quot;, &quot;manager&quot;);
@@ -234,7 +182,7 @@ connection.commit(&quot;tx2&quot;);
 connection.disconnect();
 ]]></script>
 </div></div><p>This example is distributed with the ActiveMQ distribution. You can run it from the <code>example</code> folder with</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ant stomp
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[ant stomp
 ]]></script>
 </div></div><h3 id="Stomp-StompextensionsforJMSmessagesemantics">Stomp extensions for JMS message semantics</h3><p>Note that Stomp is designed to be as simple as possible - so any scripting language / platform can message any other with minimal effort.</p><p>Stomp allows pluggable headers on each request such as sending &amp; receiving messages. ActiveMQ has several extensions to the Stomp protocol, so that JMS semantics can be supported by Stomp clients. An OpenWire JMS producer can send messages to a Stomp consumer, and a Stomp producer can send messages to an OpenWire JMS consumer. And Stomp to Stomp configurations, can use the richer JMS message control.</p><p>Stomp supports the following standard JMS properties on SENT messages:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Stomp header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>JMS header</p></th><th colspan="1" rowspan="1" class="confl
 uenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>correlation-id</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSCorrelationID</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Good consumers will add this header to any responses they send</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>expires</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSExpiration</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Expiration time of the message</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>persistent</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSDeliveryMode</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Whether or not the message is persistent</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>priority</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSPriority</p></td><td colspan="1" rowspan="1" clas
 s="confluenceTd"><p>Priority on the message</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>reply-to</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSReplyTo</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Destination you should send replies to</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>type</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSType</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Type of the message</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSXGroupID</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSXGroupID</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specifies the <a shape="rect" href="message-groups.html">Message Groups</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSXGroupSeq</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMSXGroupSeq</p></td><td colspan="1" rowspan="1" cla
 ss="confluenceTd"><p>Optional header that specifies the sequence number in the <a shape="rect" href="message-groups.html">Message Groups</a></p></td></tr></tbody></table></div><h3 id="Stomp-ActiveMQextensionstoStomp">ActiveMQ extensions to Stomp</h3><p>You can add custom headers to Stomp commands to configure the ActiveMQ protocol. Here are some examples:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Verb</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>CONNECT</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>client-id</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>string</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specifies the JMS Client ID which i
 s used in combination with the activemq.subcriptionName to denote a durable subscriber.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>selector</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>string</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specifies a JMS Selector using SQL 92 syntax as specified in the JMS 1.1 specificiation. This allows a filter to be applied to each message as part of the subscription.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.dispatchAsync</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Should messages be dispatched synchronously or asynchronously from the producer thread for non-durable topics in the broker? For fast consumers set this to <strong>false</stro
 ng>. For slow consumers set it to <strong>true</strong> so that dispatching will not block fast consumers.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.exclusive</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>I would like to be an <a shape="rect" href="exclusive-consumer.html">Exclusive Consumer</a> on the queue.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.maximumPendingMessageLimit</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>int</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For <a shape="rect" href="slow-consumer-handling.html">Slow Consumer Handling</a> on non-durable topics by dropping old messages - we can set a maximum-pending limit, such that once a slow consumer b
 acks up to this high water mark we begin to discard old messages.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.noLocal</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specifies whether or not locally sent messages should be ignored for subscriptions. Set to <strong>true</strong> to filter out locally sent messages.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.prefetchSize</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>int</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specifies the maximum number of pending messages that will be dispatched to the client. Once this maximum is reached no more messages are dispatched until the client acknowledges a message. Set to a low value &gt
 ; <strong>1</strong> for fair distribution of messages across consumers when processing messages can be slow. STOMP does not support a value of 0.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.priority</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>byte</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Sets the priority of the consumer so that dispatching can be weighted in priority order.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.retroactive</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For non-durable topics make this subscription <a shape="rect" href="retroactive-consumer.html">retroactive</a>.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>SUBSCRIBE<
 /p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>activemq.subscriptionName</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>string</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For durable topic subscriptions you must specify the same clientId on the connection and subcriptionName on the subscribe <strong>prior to v5.7.0</strong>.<br clear="none" class="atl-forced-newline"> <em><strong>Note the spelling</strong></em>: subcriptionName NOT subscriptionName. This is not intuitive, but it is how it is implemented in ActiveMQ 4.x. For the 5.0 release of ActiveMQ, both subcriptionName and <strong><em>subscriptionName</em></strong> will be supported <strong>(subcriptionName removed as of v5.6.0)</strong></p></td></tr></tbody></table></div></div>
         </td>

Modified: websites/production/activemq/content/sun-jndi.html
==============================================================================
--- websites/production/activemq/content/sun-jndi.html (original)
+++ websites/production/activemq/content/sun-jndi.html Sat Jun 27 21:23:55 2015
@@ -32,15 +32,6 @@
     </style>
     <![endif]-->
 
-          <link href='http://activemq.apache.org/styles/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' /> 
-      <link href='http://activemq.apache.org/styles/highlighter/styles/shThemeEclipse.css' rel='stylesheet' type='text/css' /> 
-      <script src='http://activemq.apache.org/styles/highlighter/scripts/shCore.js' type='text/javascript'></script> 
-              <script src='http://activemq.apache.org/styles/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> 
-         
-      <script type="text/javascript"> 
-        SyntaxHighlighter.defaults['toolbar'] = false; 
-        SyntaxHighlighter.all(); 
-      </script> 
     
     <title>
     Apache ActiveMQ &#8482; -- Sun JNDI
@@ -86,7 +77,7 @@
 <p>here's an example jndi.properties file:</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 java.naming.factory.initial = com.sun.jndi.fscontext.RefFSContextFactory
 ]]></script>
 </div></div>
@@ -96,7 +87,7 @@ java.naming.factory.initial = com.sun.jn
 <p>For ActiveMQ 4.x its </p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 Archive/ClassName=org.apache.activemq.command.ActiveMQQueue
 Archive/FactoryName=org.apache.activemq.jndi.JNDIReferenceFactory
 Archive/RefAddr/0/Type=physicalName
@@ -141,7 +132,7 @@ QueueConnectionFactory/RefAddr/3/Encodin
 <p>For ActiveMQ 3.x it is </p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
 Archive/ClassName=org.activemq.message.ActiveMQQueue
 Archive/FactoryName=org.activemq.jndi.JNDIReferenceFactory
 Archive/RefAddr/0/Type=physicalName



Mime
View raw message