cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP Header XSLT mapping

Former Member
0 Kudos

Hi,

I am working on Proxy to SOAP synchronous scenario. How to create SOAP header message in XSLT mapping...I am trying but no sauces becz receiver side SOAP header and Body in different message types please see below.

Header part is message type 1

<CredentialsHeader xmlns="http://reuters.com/datascopeselect/ExtractionService/v1/">

<Username>string</Username>

<Password>string</Password>

<AuthenticationToken>string</AuthenticationToken>

</CredentialsHeader>

Body part is

message type 2

<soap:Body>

<Extract xmlns="http://reuters.com/datascopeselect/ExtractionService/v1/">

<request>

<OutputFields>

<string>string</string>

<string>string</string>

</OutputFields>

</request>

</Extract>

</soap:Body>

</soap:Envelope>

But source is single.. I try ed multi mapping but synchronous scenario it will not working.

I am trying to generate both message types as single message type in XSLT mapping target side and will give service interface as dummy in ESR.

Please guide how to generate 2 message types as single message type in XSLT mapping...

Thanks,

Venkat

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Check my blog page:

http://simonlesflex.wordpress.com/2011/01/26/sap-pi-customize-message-with-xslt-mapping/

Here, there's an example that could be completely fit to your requirements.

Put this xslt mapping in Message Mapping's 2° step, and check flag "Do not use Soap Envelope" in your Communication Channel.

Former Member
0 Kudos

Hi,

That link is ok....same message we have. But how to insert in to XSLT mapping and how to use in ESR ?

Thanks,

Venkat

Former Member
0 Kudos

Hi Venkat,

I suggest to produce a complete SOAP message in message mapping. Import the SOAP XSD from [http://schemas.xmlsoap.org/soap/envelope/] as external definition and use it as target message in message mapping. You need at 2 mapping programs in order to produce the message. The first mapping creates header and body. In the second mapping use "Return as XML" to map the header and body nodes to the SOAP envelope.

In the SOAP receiver communication channel, you need to activate the parameter "Do Not Use SOAP Envelope", see [Configuring the Receiver SOAP Adapter|http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/content.htm].

Regards, Martin

Former Member
0 Kudos

Hi Martin,

Thanks for your reply.

But my issues is I have wsdl file with total SOAP message request and response. for request I should use above structure.

Both are in different message types, in single message mapping I can not give both because its synchronous scenario. Thats why I am using XSL mapping. In XSLT mapping I need to include both message types in single message type.