We are trying to consume a web service that uses WSE 3.0 and that requires the use of WS-Security and SAML tokens using BizTalk 2009. The WSDL provided by the service provider has allowed us to generate all the schemas and message types needed for communication with the service. The issue we are having is that right off the bat we cannot even login because we are unsure how to construct the outgoing login request message. The login request message is a multipart message that consists of a header and the request itself. Based on examples provided by the service provider, the header is enclosed in the SOAP header and the actual request is in the SOAP body. What adds (IMO) a whole new degree of difficulty is that the actuall request is an empty root node of the service schema. What I mean is when you look at the example message you see
<SOAP-ENV:Body ID=”myBody”>
<LoginRequest xmlns=”<schema namespace>/>
</SOAP-ENV:Body>
We need to know two things:
1) how do we inject the header schema of the multipart message into the SOAP header as required by the provider?
2) how do we initialize the actual request part of the login request in the SOAP body.