Geeks With Blogs
Edmund Zhao's BizTalk abc We share, We learn

One important pattern in BizTalk is to partitioning the solution especially when it is big. But some time it’s really difficult to move a file to another project or even just a different folder in same project. This happens most likely when there is an automatically generated file involved.

 

In this example, an orchestration needs to consume a web service. So we added a web reference in the project contained the orchestration. Then we built a map file which maps a schema to the request schema in Reference.xsd which was automatically generated when you added the web reference. In the orchestration, we used the map to build a request message and called the web service.

 

Now we need to move the map file from the orchestration project to a separated map project. But here is the problem. Map project needs to refer to orchestration project because Reference.xsd is still in orchestration project, but orchestration project also needs to refer to the map project because orchestration uses a map in map project. How do we solve this cross reference issue?

 

Here is a solution to this issue.

  1. Still add web reference in your orchestration project.
  2. Copy the automatically generated schema Reference.xsd to another schema project. (This break the referral of your orchestration project, notice every time you change the web service signature, you will need to make a new copy)
  3. Build the map in your map project referring to the schema copied in schema project.
  4. Modify the orchestration. Add one more message based on the Reference.xsd in schema project. After mapping, do a “Message Assignment” to convert your message from external schema to internal schema.

 

This approach has a limitation that is you will have to use “Microsoft.BizTalk.DefaultPipelines.PassThruTransmit” to skip namespace check in your send port. If you use “Microsoft.BizTalk.DefaultPipelines.XMLTransmit” pipeline, an error “There was a failure executing the send pipeline…” will occur.

 

...Edmund Zhao

Posted on Friday, January 6, 2006 9:01 AM | Back to top


Comments on this post: How to separate map file from orchestration project when orchestration consumes web services

No comments posted yet.
Your comment:
 (will show your gravatar)


Copyright © Edmund Zhao | Powered by: GeeksWithBlogs.net