Friday, August 17, 2007

Virtues of WSDL Virtualization

WSDL virtualization is the ability to create a virtual WSDL from one or more predefined WSDLs files. Typically, WSDL virtualization takes place across multiple back-end systems that expose their operations through WSDL documents. An intermediary gateway sits between the producer and the consumer and aggregates the WSDLs. Based on policies enforced on the gateway, operations are exposed to the consumers. A sample deployment is shown below.

The virtues of WSDL virtualization include:
  1. Security: The virtual WSDL can exposed or hide some of the operations from the original WSDLs. The WSDL endpoints are cloaked with only the intermediaries endpoints being exposed.
  2. Consistency: Virtualization allows to select operations from multiple WSDLs and exposed them to clients as a coherent single WSDL.
  3. Productivity: The main benefit of virtualization is to be able to mix and match operations without having to copy and paste parts of the desired WSDLs into new WSDL files. It allows a customer to be able generate a library of all the operations suported on its organization and only exposed the ones required for a particular customer.

Some of the challenges of WSDL Virtualization addressed by Sophisticated SOA Gateways, such as Forum Systems Sentry include:

  1. Resolving different schemas that share the same namespace.
  2. Multiple schemas might have different constraints for the same element, that might be incompatible.
  3. Exposing the list of WSDLs that developers should be working on. Although external trading partners typically require a single WSDL, internal developers work with multiple WSDLs. A list of WSDL needs to be retrieved from the SOA Gateway to better manage developers working across multiple WSDLs
WSDL Virtualization is a crucial part of deploying SOA. The vices of free-for-all operations can quickly set chaos within a SOA deployment that can only be controlled through SOA Gateways that provide strong WSDL virtualization.