MapMessage does not send mapped fields
--------------------------------------

                 Key: AMQCPP-166
                 URL: https://issues.apache.org/activemq/browse/AMQCPP-166
             Project: ActiveMQ C++ Client
          Issue Type: Bug
          Components: Openwire
    Affects Versions: 2.1.3
         Environment: 32-bit XP client with client compiled under VS 2005, 
ActiveMQ v5.0 is running on a 32-bit Windows 2003 server.
            Reporter: Thomas Johnson
            Assignee: Nathan Mittler


Modified the vs2005-activemq-example's HelloWorldProducer to use a map message:

                                MapMessage *message=session->createMapMessage();
                                message->setInt("MsgNum",ix);
                                
message->setString("Thread",threadIdStr.c_str());
                producer->send( message );

and the HelloWorldConsumer to receive it:

                        const MapMessage * mapMessage=
                                dynamic_cast<const MapMessage *>(message);
                        if (mapMessage!=NULL) {
                                int num=mapMessage->getInt("MsgNum");
                                printf("Msg #%d from thread 
%s\n",num,mapMessage->getString("Thread").c_str());
                        } else {
                                printf("Not a map message\n");
                        }

The getInt with Msgnum throw a field not in map exception.   After closer 
inspection, the map was empty.   Also, while not an expert in the code, but I 
tried tracing it through the producer->send and as far as I could tell, the map 
was never marshalled.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to