Book Image

Microsoft BizTalk 2010: Line of Business Systems Integration

Book Image

Microsoft BizTalk 2010: Line of Business Systems Integration

Overview of this book

Microsoft BizTalk is an integration and connectivity server solution that allows businesses to connect disparate systems easily. In today’s business climate of mergers and acquisitions, more and more enterprises are forced to exchange data across disparate Line of Business systems using integration brokers like BizTalk Server 2010. What is often overlooked when integrating these systems is the pre-requisite knowledge that ERP and CRM systems demand in order to effectively integrate them. No longer is this knowledge locked up in the heads of expensive consultants. Gain an edge within your organization by developing valuable skills in the area of Line of Business integration from this book.This book will show you how to integrate BizTalk with Line of Business systems using practical scenarios. Each chapter will take a Line of Business system, introduce some pre-requisite knowledge and demonstrate how you can integrate BizTalk with that Line of Business system, and then provide guidance based upon real world experience, taking your BizTalk knowledge further.This book will enable you to master how to integrate BizTalk with Line of Business systems effectively. The book starts by highlighting the technical foundation of WCF-LOB adapters and the common steps and important properties pertaining to popular WCF-LOB adapters. You will then move on to an overview of how to integrate with Microsoft SQL Server using the WCF based SQL Server adapter. The book then dives into topics such as integrating BizTalk Server with Microsoft Dynamics CRM, building BizTalk/SAP integrated solutions using IDocs, the differences between IDocs and RFCs/BAPIs, and integrating BizTalk with Windows Azure AppFabric Service Bus amongst others.
Table of Contents (18 chapters)
Microsoft BizTalk 2010: Line of Business Systems Integration
Credits
Foreword
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Understanding the ASDK-based adapter


If you read the product documentation, you will find that the ASDK-based adapters are built on top of the WCF Channel model and surface as custom WCF bindings. What this means is that WCF clients are able to communicate with ASDK-based adapters as if they were WCF services. Likely, the very first question you want to ask is whether the ASDK-based adapters are in fact WCF services just presented under the new fancy name. No, they are not! The use of the acronym WCF in the WCF LOB Adapter SDK is somewhat misleading; WCF forms the basis of the technology but the software does not revolve around web services. To understand how the adapters fit into the WCF infrastructure, let's recall some of the WCF fundamentals.

In order to establish communication process with clients, any WCF service must expose at least one endpoint. The WCF endpoints are based on three elements, known as the "A, B, and C" of the WCF. These three elements are:

  • Address: It takes a form of the URI specifying the address where the service can be reached at.

  • Binding: Bindings specify a communication protocol between the client and the service.

  • Contract: Contracts specify what operations are exposed by the service.

Communication between client and service is conducted through communication channels; one channel on the client side and its equivalent on the server side. On the server side, when you instantiate the ServiceHost class, it instantiates a channel listener, which in turn builds a communication channel for the service. On the client side, the proxy creates a channel factory, which is responsible for building the channel for the client. The channels consist of binding elements, each responsible for its own part of message processing to form a stack of binding elements.

As you can notice in the previous diagram, the bottom layer in the communication channel is a transport layer, and that's exactly where the ASDK-based adapter fits within the channel stack.

The great thing about WCF is that it has been designed with extensibility in mind, which allows you to use custom transport bindings tailored to your specific needs. Much like the standard WCF transports, such as TCP, named pipes, HTTP, and MSMQ, the ASDK-based adapters are just a custom transport binding elements consumable from BizTalk applications using a standard WCF-custom adapter. As you can see in the following image, in the outbound scenario, the ASDK-based adapter instead of sending a message over the network like standard WCF transports, just communicates with the LOB system and then sends a response message to the client.

In the inbound scenario, ASDK-based adapter either monitors or listens for a notification from the target LOB system for particular events and generates a message containing event-specific data for the hosting application. We go into more details later in this and subsequent chapters.