<?xml version="1.0"?>
<!--
  Copyright 2002,2004 The Apache Software Foundation.
  
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
  
       http://www.apache.org/licenses/LICENSE-2.0
  
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<jelly xmlns="jelly:core" xmlns:jms="jelly:jms">

About to send a JMS map message

<jms:connection name="queue">
  <jms:send>
    <jms:destination name="myQueue"/>
    <jms:mapMessage type="Order" correlationID="1234">
      <jms:mapEntry name="a" value="pizza"/>
      <jms:mapEntry name="b">cheese</jms:mapEntry>
      <jms:mapEntry name="c" value="${12 * 20}"/>
    </jms:mapMessage>
  </jms:send>

  <new className="java.util.HashMap" var="m"/>
  <set target="${m}" property="a" value="pizza"/>  
  <set target="${m}" property="b" value="1234"/>  
  <set target="${m}" property="c" value="${12+57}"/>  

Sending map message with map: ${m}
  
  <jms:send>
    <jms:destination name="myQueue"/>
    <jms:mapMessage type="Order2" correlationID="23456" map="${m}"/>
  </jms:send>
  
</jms:connection>

</jelly>
