You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rajith Attapattu (JIRA)" <ji...@apache.org> on 2011/05/21 03:37:47 UTC

[jira] [Commented] (QPID-3272) Allow JMS messages originated from another vendor to be sent through Qpid with the Message ID intact.

    [ https://issues.apache.org/jira/browse/QPID-3272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13037219#comment-13037219 ] 

Rajith Attapattu commented on QPID-3272:
----------------------------------------

The following is what the JMS and AMQP specs have to say about message ID.

The JMS spec mentions the following for the getMessageID() method,

"When a message is sent, JMSMessageID can be ignored. When the send or publish
method returns, it contains a provider-assigned value. "

Therefore, technically a JMS provider is within it's right to ignore any
previously set value and set it's own ID.

It also says the following for the setMessageID() method,

"JMS providers set this field when a message is sent. This method can be used
to change the value for a message that has been received."

However it's not quite clearly what should be the behaviour if a received
message is being resent after resetting the message id.

On the other hand the AMQP spec request all messages to have a unique
identifier, hence the reason why we have a validation there.

"Message-id is an optional property of UUID type which uniquely identifies a
message within the message system."

> Allow JMS messages originated from another vendor to be sent through Qpid with the Message ID intact.
> -----------------------------------------------------------------------------------------------------
>
>                 Key: QPID-3272
>                 URL: https://issues.apache.org/jira/browse/QPID-3272
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.6, 0.8, 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Minor
>             Fix For: 0.11
>
>
> A message bridge it forwards messages between two different messaging providers.
> However when attempting to send a message from another vendor through Qpid, the send method throws an exception if the message ID is not a UUID. 
> javax.jms.JMSException: MessageId
> 'ID:dhcp209-12.gsslab.pnq.redhat.com-45266-1305237148981-3:0:3:1:1' is not of
> the correct format, it must be ID: followed by a UUID
>  at
> org.apache.qpid.client.message.AMQMessageDelegate_0_10.setJMSMessageID(AMQMessageDelegate_0_10.java:165)
>  at
> org.apache.qpid.client.message.AbstractJMSMessage.setJMSMessageID(AbstractJMSMessage.java:92)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org