text/xml is the easiest way to receive XML but it isn’t the only way. When the content-type is text/plain, a variable named ffdata will be in the pipeline when the service is called. This is an InputStream-derived object which can be passed to pub.io.streamToBytes. The resulting bytes can be passed to pub.string.bytesToString.
Raj, you don’t need the partner that is using BizTalk to make any changes. Change your service that they invoke to use the above steps (or whatever you need) and you’ll be set. You can go even further and make your receive service accept ffdata, node or a named string (such as “document” or “edidata”). That way your service can support content-types of text/plain, text/xml or an http get with a named var. The service would do these steps:
- Check if node is not $null. If present, use it.
- If node is $null, check for a named string. If present, convert it to a node.
- If the named string is $null, check for ffdata. If present, convert to bytes, convert the bytes to a string, convert the string to a node.
- If ffdata is $null, no usable data was passed. Return an error.
- At this point, you have a node. Do whatever processing you need.
HTH.
#webmethods-Protocol-and-Transport#Integration-Server-and-ESB#webMethods