Farhan's Two Cents on Collaboration, Integration & Enterprise Tech.

Farhan Khan

  Home  |   Contact  |   Syndication    |   Login
  29 Posts | 0 Stories | 51 Comments | 50 Trackbacks

News

Archives

EAI Folks

EAI Standards

EAI Tools

iPhone

Relativity

UnCategorized

I know the title looks scary however it wont be as scary once I explain the situation and the fact that message would not be really untyped :)

So lets say that you are dealing with an intricate and a huge schema and you also expose the orchestration as a web service. Now assuming that you used the BizTalk Web Service Publishing wizard, it will do all the plumbing for you to set up the web service, create ports and hook up logical ports to the physical web service ports.

So far so good, however now when you try to use the web service in say your test harness, you face this daunting task of coding/building the request object from scratch and believe you me, if you think deserializing an existing file request will work for you, you may not be so lucky (in most cases).

Now is the time where I would love to be able to pass the contents of the XmlDocument (Request) somehow and as far as validation against schema is concerned it will happen on orchestration receive port by all means (this is what I meant when i stressed that the message is not really untyped).

So elegant or not the practical solution is to enable the Web Service to receive an XmlDocument and respond with a similar object as well. The simplest way to do this is to follow the steps below:

  1. Build a Dummy orchestration which accepts a message of type XmlDocument and sends back one as well to a Public Request-Response port.
  2. Compile the orchestration and run the Web Service publishing wizard on the assembly; this will create the web service, create the ports.
  3. Now that the web service & ports capable of receiving XmlDocument are up and running, just Bind your actual orchestration to these ports and List it again.
  4. You can now pass the XmlDocument/XmlNode object to the web service and receive the same response.

I faintly recall a similar idea being discussed somewhere, however that site/thread talked about passing untyped messages while I have tried to put the solution in context of Web Services where untyped message is really only untyped before its delivered to BizTalk Receive port.

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati
posted on Tuesday, July 26, 2005 9:52 PM