[ 
https://issues.apache.org/jira/browse/ARTEMIS-283?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Bertram resolved ARTEMIS-283.
------------------------------------
    Resolution: Unresolved

Please reopen if you still think this is a problem.

> Protocol independent JMSMessageID from management interface
> -----------------------------------------------------------
>
>                 Key: ARTEMIS-283
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-283
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 1.1.0
>            Reporter: Petter Nordlander
>            Priority: Minor
>
> The Management interface (JMX) has a listMessagesAsJSON operation on JMS 
> queues.
> Listing JMS messages would not make sense if there is not a JMSMessageID to 
> correlate with. This works only for messages produced with Artemis "Core JMS" 
> protocol (i.e. HornetQ wire protocol). Messages produced with AMQP (proton) 
> and OpenWire JMS clients does not contain the JMSMessageID property. 
> This property is vital to make GUIs, management scripts and whatnot.
> Example:
> Three messages in the following order: Artemis JMS, OpenWire, AMQP
> {code:javascript}
> [
>       {
>               "JMSPriority":4,
>               "JMSMessageID":"ID:11d61bfc-7c8f-11e5-b67d-fbf95a4499b8",
>               "address":"jms.queue.a1",
>               "JMSExpiration":0,
>               "__AMQ_CID":"11d1d638-7c8f-11e5-b67d-fbf95a4499b8",
>               "JMSTimestamp":1445938962608,
>               "messageID":134336,
>               "JMSDeliveryMode":"PERSISTENT"
>       },
>       {
>               "address":"jms.queue.a1",
>               "JMSExpiration":0,
>               "JMSTimestamp":1445938969309,
>               
> "__HDR_MARSHALL_PROP":[0,0,0,1,0,6,118,101,110,100,111,114,9,0,3,97,109,113],
>               "messageID":134354,
>               "__HDR_GROUP_SEQUENCE":0,
>               
> "__HDR_PRODUCER_ID":[0,0,0,61,123,1,43,0,52,73,68,58,80,101,116,116,101,114,115,45,77,97,99,66,111,111,107,45,80,114,111,46,108,111,99,97,108,45,54,52,53,55,52,45,49,52,52,53,57,51,56,57,54,57,49,53,54,45,49,58,49,0,1,0,1],
>               "JMSDeliveryMode":"PERSISTENT",
>               "JMSPriority":4,
>               "__HDR_COMMAND_ID":6,
>               "__HDR_ARRIVAL":0,
>               "__HDR_REDELIVER_COUNTER":0,
>               
> "__HDR_MESSAGE_ID":[0,0,0,65,110,2,-82,2,123,0,52,73,68,58,80,101,116,116,101,114,115,45,77,97,99,66,111,111,107,45,80,114,111,46,108,111,99,97,108,45,54,52,53,55,52,45,49,52,52,53,57,51,56,57,54,57,49,53,54,45,49,58,49,0,1,0,1,0,1],
>               "__HDR_DROPPABLE":false,
>               "__HDR_BROKER_IN_TIME":1445938969310
>       },
>       {
>               "JMS_AMQP_NATIVE":false,
>               "JMSPriority":4,
>               "address":"jms.queue.a1",
>               "JMSExpiration":0,
>               "JMS_AMQP_MESSAGE_FORMAT":0,
>               "JMSTimestamp":1445939704838,
>               "messageID":134376,
>               "JMSDeliveryMode":"PERSISTENT"
>       }
> ]
> {code}
> Corresponding Message Ids would be (read from JMS interface).
> Core: JMSMessageID: 783cf118-7c91-11e5-9a09-b3c5f39ba469:0:0:-1
> OpenWire: JMSMessageID: 
> ID:Petters-MacBook-Pro.local-64574-1445938969156-1:1:1:1:1
> AMQP: JMSMessageID: 783d1829-7c91-11e5-9a09-b3c5f39ba469:0:0:-1
> Problem is in QueueCtrlImpl which uses core-jms-client to convert messages 
> from core to Jms Map. It consider all messages as core messages. Logic from 
> each protocol/client should be used on respective message.
>     Map<String, Object> jmsMessage = 
> ActiveMQMessage.coreMaptoJMSMap(coreMessage);



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to