cancel
Showing results for 
Search instead for 
Did you mean: 

Using Message ID in the SOAP header (Sender)

Former Member
0 Kudos

Hi Experts,

The scenario is SOAP to IDoc.

We have requirement to insert the Message ID in the SOAP header for avoiding duplicate messages from the SOAP client.

Please note SOAP client is unable to support URL parameter, so we have to use Message ID in the SOAP header.

So please suggest how to insert the Message ID in the SOAP header (WSDL) , and do we need to implement any mapping to retrieve the Message ID value from the SOAP header - to create a PI message.

Thanks in advance.

MK

Accepted Solutions (0)

Answers (2)

Answers (2)

MichalKrawczyk
Active Contributor

Hi,

>>>So please suggest how to insert the Message ID in the SOAP header (WSDL) , and do we need to implement any mapping to retrieve the Message ID value from the SOAP header - to create a PI message.

no, there is no need for any mapping

in standard there is an AXIS adapter module messageidextractor

which can take value from SOAP header and create a message ID from it

so there is no need for any sophisticated development

Regards,

Michal Krawczyk

Former Member
0 Kudos

Thanks Michal,

Is their any solution possible with out using the Axis framework, as I am not sure of the configuration required.

And also if we set the USE ENCODED HEADERS and USE QUERY STRING in the standard SOAP sender adapter, will PI create message using the message ID in the SOAP header, as it does when messageID inserted in the URL.

Please suggest if there is any other way of doing it or configuration to use Axis framework module messageID extractor.

former_member200962
Active Contributor
0 Kudos

Since you cannot include the MSGID in the SOAP Client and want to avoid AXIS adapter then check the use of DynamicConfiguration Bean in your case....using this you can set the MessageID in XI.....include it in the module list in your CC and check if you are getting the required O/P:

http://help.sap.com/saphelp_nw04/Helpdata/EN/45/da2239feb22e98e10000000a155369/content.htm

Regards,

Abhishek.

Former Member
0 Kudos

Hi Abhishek,

The SOAP client is able to support the messageID in SOAP header, But I want to know how we update the WSDL with the required Feild(messageID).

and also how can we create a PI message with the messageID supplied by SOAP client.

Many thanks,

MK

former_member200962
Active Contributor
0 Kudos
But I want to know how we update the WSDL with the required Feild(messageID).

I dont think you can update the wsdl url to include the messageID field...if you notice the other fields in the wsdl you will find all are static...however your messageID will be dynamic.....so just ask the SOAP client application to append the MessageId field and send the message.....at runtime the message id will be extracted by PI......did you test the scenario?...if no then test it once so that if there is an error we will come to know...

Regards,

Abhishek.