Author |
Message
|
Esa |
Posted: Mon Feb 13, 2012 6:23 am Post subject: chaining SOAP ReplyIdentifiers |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
I guess there is no (undocumented) way to make SOAPInput nodes read a ReplyIdentifier from the incoming request instead generating one? |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Feb 13, 2012 6:27 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
I'm not sure I understand the question.
Why would a SOAPInput node generate a reply identifier? |
|
Back to top |
|
 |
Esa |
Posted: Mon Feb 13, 2012 6:36 am Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
mqjeff wrote: |
I'm not sure I understand the question.
Why would a SOAPInput node generate a reply identifier? |
For internal correlation between SOAPInput and SOAPReply nodes. See here |
|
Back to top |
|
 |
lancelotlinc |
Posted: Mon Feb 13, 2012 7:11 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
SOAP Reply Id is created on the initial inbound request. You do not need to generate one. It is stored here: InputLocalEnvironment.Destination.SOAP.Reply.ReplyIdentifier; _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Feb 13, 2012 7:23 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Esa wrote: |
mqjeff wrote: |
I'm not sure I understand the question.
Why would a SOAPInput node generate a reply identifier? |
For internal correlation between SOAPInput and SOAPReply nodes. See here |
I'm still not sure I understand. There's nothing on that page that indicates that the SOAPInput node will not actually use an identifier set on the message.
Again, I don't understand what shows that the SOAPInput node will create a ReplyID.
If you submit a SOAP message that has a reply identifier set, can you show that it is replaced by a new one inside the message flow? |
|
Back to top |
|
 |
Esa |
Posted: Mon Feb 13, 2012 7:28 am Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
mqjeff wrote: |
If you submit a SOAP message that has a reply identifier set, can you show that it is replaced by a new one inside the message flow? |
mqjeff wrote: |
If you submit a SOAP message that has a reply identifier set |
If you tell me how you do this, you have answered my question. |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Feb 13, 2012 7:43 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Esa wrote: |
mqjeff wrote: |
If you submit a SOAP message that has a reply identifier set, can you show that it is replaced by a new one inside the message flow? |
mqjeff wrote: |
If you submit a SOAP message that has a reply identifier set |
If you tell me how you do this, you have answered my question. |
By using the normal SOAP methods of creating a message id on the soap message.
I mean, this is my point. If the SOAP standard doesn't provide a method of putting this information into an incoming requeest, what is the SOAPInput node supposed to do?
Have you tried setting the HTTP request id? Have you tried setting a WS-Addressing message id? |
|
Back to top |
|
 |
Esa |
Posted: Mon Feb 13, 2012 11:16 am Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
mqjeff wrote: |
By using the normal SOAP methods of creating a message id on the soap message. |
Thanks, I must test this. I was asking because I could not find LocalEnvironment overrides for SOAP messageId and WS-Addressing messageid for SOAPAsychRequest node. I didn't cross my mind that you are supposed to do it by modifying the SOAP Envelope in the SOAP tree instad of configuring.
mqjeff wrote: |
I mean, this is my point. If the SOAP standard doesn't provide a method of putting this information into an incoming requeest, what is the SOAPInput node supposed to do? |
It does, and then the SOAPInput node is supposed to use it? But if you put a 24 byte identifier in /soap:Envelope/soap:Header/some-namespace:message-id, will it be set to LocalEnvironment..Destination.SOAP.Reply.ReplyIdentifier byt the SOAPInput node? Must you use a certain namespace?
mqjeff wrote: |
Have you tried setting the HTTP request id? Have you tried setting a WS-Addressing message id? |
http has no standard header field for message id, this would require a proprietary extension. Is there one already?
Why do I want do do these things? For some Message Broker specific stuff: passing a business monitoring global corrrelator, correlating a chain of messages in the audit log, etc.
What's not bended doesn't get extended! |
|
Back to top |
|
 |
mgk |
Posted: Mon Feb 13, 2012 12:39 pm Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Quote: |
I could not find LocalEnvironment overrides for SOAP messageId and WS-Addressing messageid for SOAPAsychRequest node. |
One SOAPReply node can service many SOAPInput nodes if required. This is because there IS a LocalEnvironment location where you can place the ReplyIdentifier, WSA settings (as well as overrides for the AsyncRequest as well). The location is documented in the InfoCenter referenced from the section for the respective nodes. Post again if you can't find it...
Kind regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
Esa |
Posted: Mon Feb 13, 2012 2:15 pm Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
Thanks, I finally found WSA.MessageId overrides. What I haven't found yet is how to set messageId with SOAPRequest when you don't use WS-Adressing.
And you confirm that if I override WSA.MessageId of a SOAPRequest node with the ReplyIdentifier set by the SOAPInput in messageflow 1, the SOAPInput node in message flow 2 (that is called by the SOAPRequest node) will take the messageId and place it in LocalEnvironment.Destination.SOAP.Reply.ReplyIdentifier? |
|
Back to top |
|
 |
Esa |
Posted: Tue Feb 14, 2012 12:19 am Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
Esa wrote: |
What I haven't found yet is how to set messageId with SOAPRequest when you don't use WS-Adressing. |
LocalEnvironment.Destination.SOAP.Request.UserContext seems to be an alternative here (from V 7 on). I'll test it. Im pretty sure that it won't be picked up by the receiving SOAPInput and used as ReplyIdentifier, but anyhow it is an easy way to communicate Replyidentifier to the next flow.
I'm sorry if I have been confusing you. I had been preparing this question in my head for a while. It was not ripe and ready yet, but we had a network failure yesterday. I could not do much work and decided to post the question. |
|
Back to top |
|
 |
|