ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General IBM MQ Support » Message ID

Post new topic  Reply to topic
 Message ID « View previous topic :: View next topic » 
Author Message
J.D
PostPosted: Tue Mar 16, 2010 8:22 am    Post subject: Message ID Reply with quote

Voyager

Joined: 18 Dec 2009
Posts: 92
Location: United States

What charset is to be used to decode the messageId?
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Mar 16, 2010 8:27 am    Post subject: Re: Message ID Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

J.D wrote:
What charset is to be used to decode the messageId?


None. It's not a string it's a byte array. It's only value is to distinguish one message from another.

Any information you might think you could get from it can be obtained by other means.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
J.D
PostPosted: Tue Mar 16, 2010 8:50 am    Post subject: Reply with quote

Voyager

Joined: 18 Dec 2009
Posts: 92
Location: United States

It's a request/response scenario, receiving app is not putting the msg id in response msg and app folks tried using UTF-8, UTF-15 and ISO-** but nothing is working.
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Mar 16, 2010 9:06 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

J.D wrote:
It's a request/response scenario, receiving app is not putting the msg id in response msg and app folks tried using UTF-8, UTF-15 and ISO-** but nothing is working.


All they should be doing is copying the msg id from the request into the response by doing a memcpy or similar. Ideally copying it into the correl id rather than the message id
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
shashivarungupta
PostPosted: Wed Mar 17, 2010 2:37 pm    Post subject: Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

Quote:
Ideally copying it into the correl id rather than the message id

Agree !
As its already being said that every message has a unique message id to distinguish it from other messages.
While sending the message to target end the correl id would be 0 and while reply the value of the correl.id would be the message id of the input message that went to the target end. Message ids would be unique for all the messages !
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
J.D
PostPosted: Wed Mar 17, 2010 4:31 pm    Post subject: Reply with quote

Voyager

Joined: 18 Dec 2009
Posts: 92
Location: United States

I agree with you guys. Receiving app should read the message id from the request message and put that id in correl id in response message. But here the receiving client is reading the correl id in req msg which is weird and since correl id will have zero or null in req msg, the response msg is coming with null in correl id. App folks are in touch with vendor to fix this issue.
Back to top
View user's profile Send private message
harish_td
PostPosted: Wed Mar 17, 2010 6:52 pm    Post subject: Reply with quote

Master

Joined: 13 Feb 2006
Posts: 236

I once recall working with such an application, which was reading the CorrelId.
We could not get this app changed as it was a "Vendor-Developed" code and the target app did not have the source code.

So as an interim solution, we modified the sending app to get the QM to generate a MsgId for each generated message. This value is assigned to the Correlation ID and then sent to the target application. Thus MsgId = Uniquely Generated by the QM = CorrelId
The target application retains this correlation ID for the reply that it generates.

One important thing to note here is that the sending and receiving queues must always be different. Lest your source app consume its own request.

Fast but Dirty. Try it at your own risk.
Back to top
View user's profile Send private message Yahoo Messenger
mvic
PostPosted: Thu Mar 18, 2010 2:24 pm    Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

J.D wrote:
I agree with you guys. Receiving app should read the message id from the request message and put that id in correl id in response message. But here the receiving client is reading the correl id in req msg which is weird and since correl id will have zero or null in req msg, the response msg is coming with null in correl id. App folks are in touch with vendor to fix this issue.

It's possible to get MQ to generate a unique CorrelId in the request message. You have to ask for that in the requester app though.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Mar 18, 2010 4:38 pm    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9472
Location: US: west coast, almost. Otherwise, enroute.

WMQ designed the msgid and correlid fields to be used in the request-reply model. WMQ doesn't enforce how applications use these fields.

Applications can request new and unique msgid and correlid quite easily with MQPMO_NEW_MSGID and MQPMO_NEW_CORRELID, or the equivalents in Java, .NET, etc.

I'm surprised that your developers got it wrong, as the request-reply model is well-documented in the WMQ Application Programming Ref. and WMQ Application Programming Guide.

...not all that surprised, actually.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Mar 18, 2010 9:06 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

J.D wrote:
I agree with you guys. Receiving app should read the message id from the request message and put that id in correl id in response message. But here the receiving client is reading the correl id in req msg which is weird and since correl id will have zero or null in req msg, the response msg is coming with null in correl id. App folks are in touch with vendor to fix this issue.

Make first sure that the issue is not with your app folks.
  • base mq: flag the message as a request
  • base mq: set the message flags to copy messageId to correlationId
  • base mq: request a new correlId on put and set the message flags to copy correlId to correlId.
  • JMS requester side: I usually just set the JMSReplyTo Destination.
  • JMS server side: check if correlid initial and copy accordingly from either messageid or correlation id to correlation id. Alternatively you can try and read the corresponding message flags and operate as directed.

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » Message ID
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.