title: Mule jms with CLIENT_ACKNOWLEDGE mode? Message automatically consumed even though I didn't acknoeledge it
body: <p>I've created a simple mule JMS flow with CLIENT_ACKNOWLEDGE mode. My understanding with 'CLIENT_ACKNOWLEDGE' is that we have to explicitly acknowledge the message on receiver or client side, it will not consume from the queue until it would not acknowledge.</p>
  
  <pre><code> &lt;spring:beans&gt;
          &lt;spring:bean name="connectionFactory"
              class="org.apache.activemq.ActiveMQConnectionFactory"&gt;
              &lt;spring:property name="brokerURL" value="tcp://localhost:61616" /&gt;
              &lt;spring:property name="redeliveryPolicy"&gt;
                  &lt;spring:bean class="org.apache.activemq.RedeliveryPolicy"&gt;
                      &lt;spring:property name="maximumRedeliveries" value="10" /&gt;
                      &lt;spring:property name="initialRedeliveryDelay"
                          value="1000" /&gt;
                  &lt;/spring:bean&gt;
              &lt;/spring:property&gt;
          &lt;/spring:bean&gt;
          &lt;/spring:beans&gt;
      &lt;jms:connector name="Active_MQ3" connectionFactory-ref="connectionFactory" acknowledgementMode="CLIENT_ACKNOWLEDGE" maxRedelivery="10" persistentDelivery="true" specification="1.1" /&gt;
  
  
  
  &lt;flow name="main1" doc:name="main1"&gt;
                  &lt;http:inbound-endpoint exchange-pattern="request-response" host="localhost" path="test" port="8099" doc:name="HTTP"/&gt;
  
                  &lt;logger message="starting main flow" level="INFO" doc:name="Logger"/&gt;
  
                      &lt;jms:outbound-endpoint queue="StudioIN" connector-ref="Active_MQ3" doc:name="JMS"&gt;
                           &lt;jms:transaction action="NONE"/&gt;
                      &lt;/jms:outbound-endpoint&gt;
  
              &lt;/flow&gt;
  
            //reading msg from queue, not acknowledging 
  
              &lt;flow name="worker1" doc:name="worker1"&gt;
                  &lt;jms:inbound-endpoint queue="StudioIN" connector-ref="Active_MQ1" doc:name="JMS"/&gt;
                  &lt;logger message="Consuming payload: #[payload]" level="INFO" doc:name="Logger"/&gt;
              &lt;/flow&gt;
          &lt;/mule&gt;
  </code></pre>
  
  <p>In my test flow I haven't acknowledge the message, but it still got consumed. How we can keep message in queue until it get acknowledge from client or receiver side?</p>
  
  <pre><code>&lt;!-------------- Updated flow ------------------------&gt;
  &lt;flow name="worker1" doc:name="worker1"&gt;
          &lt;jms:inbound-endpoint queue="StudioIN" connector-ref="Active_MQ1" doc:name="JMS"&gt;
              &lt;jms:client-ack-transaction action="ALWAYS_BEGIN"/&gt;
          &lt;/jms:inbound-endpoint&gt;
          &lt;logger message="Consuming payload: #[payload]" level="INFO" doc:name="Logger"/&gt;
      &lt;/flow&gt;
  </code></pre>