Book Image

SOA Patterns with BizTalk Server 2009

By : Richard Seroter
Book Image

SOA Patterns with BizTalk Server 2009

By: Richard Seroter

Overview of this book

SOA is about architecture, not products and SOA enables you to create better business processes faster than ever. While BizTalk Server 2009 is a powerful tool, by itself it cannot deliver long-lasting, agile solutions unless we actively apply tried and tested service-oriented principles. The current BizTalk Server books are all for the 2006 version and none of them specifically looks at how to map service-oriented principles and patterns to the BizTalk product. That's where this book fits in. In this book, we specifically investigate how to design and build service-oriented solutions using BizTalk Server 2009 as the host platform. This book extends your existing BizTalk knowledge to apply service-oriented thinking to classic BizTalk scenarios. We look at how to build the most reusable, flexible, and loosely-coupled solutions possible in the BizTalk environment. Along the way, we dive deeply into BizTalk Server's integration with Windows Communication Foundation, and see how to take advantage of the latest updates to the Microsoft platform. Chock full of dozens of demonstrations, this book walks through design considerations, development options, and strategies for maintaining production solutions.
Table of Contents (18 chapters)
SOA Patterns with BizTalk Server 2009
Credits
About the author
About the reviewers
Preface
Index

Exposing WCF services from orchestrations


Our first task is to take a BizTalk orchestration workflow and expose one of its ports as a WCF-enabled web service. Fortunately for us, this is a fairly straightforward undertaking that requires no actual coding.

Setting up the project

The use case we will use throughout this chapter involves the ordering of pharmaceutical products. Our initial assignment is to define the shape of the data representing a "new order". I've built a schema named NewOrder_XML.xsd with a root node name of NewOrder and a structure which holds the characteristics of the order, the particular items that made up the order, and the corresponding sales territory information. The namespace of my schema, http://Seroter.BizTalkSOA.Chapter3.OrderManagement.BizTalk/Contract, will surface again once the service WSDL is generated.

Now that we have a contract definition representing a new order, we assemble an orchestration workflow that consumes this data entity. Recall from Chapter...