Underlying Technologies

This section introduces the topic of XML Web services at two levels. The section begins with a brief statement explaining the functionality that XML Web services bring to your applications. Next, the section examines four key underlying technologies. Most of you will not use these technologies directly. Instead, you will create and use XML Web services through Visual Studio .NET. Visual Studio .NET will manipulate these underlying technologies for your XML Web services. Nevertheless, a basic grasp of these technologies will round out your understanding of XML Web services and using them to create solutions for clients with Visual Studio .NET.

Quick Synopsis of XML Web Services

As mentioned, XML Web services comprises a new collection of capabilities for developers that facilitate interoperability between computers via a Web connection. A specific XML Web service can allow one computer to remotely invoke a method ”or more precisely, a Web method ”on another computer. The technology promises to interface applications built with heterogeneous development environments (for example, Visual Basic .NET on Windows and Java on UNIX). In fact, leading industry firms such as IBM and Microsoft have embraced XML Web services. However, even if XML Web services cannot completely interface applications built with heterogeneous development environments, it will deliver important benefits to both large and small development organizations because XML Web services technologies offer a simple model to implement distributed computing. Therefore, even small organizations can easily share data among computers, even when those computers do not reside on a LAN. In addition, small development organizations can offer value-added services to larger organizations at lower prices that attract more clients.

Note  

XML Web services is commonly referred to as Web services . I will follow this convention for the balance of the chapter.

At its core , Web services employs a peer-to-peer computing model. One computer provides a service such as a computation, and another computer consumes a service ”for example, by providing input for the computation or using the result of a computation. In essence, a Web service is a class that you can run on another computer via a Web connection. The two computers commonly will connect to one another via HTTP, but the Web services model is abstracted so that other connection types can serve this role. A Web service exposes Web methods that enable a client application to manipulate the class running on the computer hosting the Web service. The computers hosting a Web service and its clients have no special requirements other than needing Microsoft Internet Information Services (IIS) installed and running, and needing the .NET Framework installed. For example, in a pair of computers, each can host a Web service for the other computer; a primary domain Web services computer is not needed. In this model, a computer can be both a Web service provider and a Web service client.

XML

XML is rapidly becoming the lingua franca of Web services and many other computing technologies. In the context of XML Web services, XML is the syntax for exchanging data between the hosting and client computers. Although it is not strictly necessary for a host computer to accept data from or return data to a client computer, it is likely that the host computer participates in one or both of these activities (receiving data and returning data). For example, a client computer can pass information ”such as an authentication code and a monetary amount to transfer from one account to another ”to a host computer of a financial institution. The host computer can validate the authentication code, perform the account transaction, and return a confirmation of the transfer.

Actually, Web services do not exchange data in stand-alone XML documents. The XML containing the data that a host and client computer exchange resides within Simple Object Access Protocol (SOAP) messages that the two computers exchange. Before computers can exchange information, the client computer needs to know about the Web service s input and output arguments. Another XML syntax, known as the Web Services Description Language (WSDL), describes the Web service, including the SOAP message format for exchanging content between the hosting computer and the client computer. I will briefly describe SOAP and WSDL in a moment.

UDDI

Given that you have a Web service available for use on a host computer, client computers need a way of discovering its availability. UDDI, which stands for Universal Description, Discovery, and Integration, is one technology for addressing this need. The UDDI technology enables the registration of Web services in directories that users can search. The directories allow users to discover your Web services, along with Web services provided by other companies, that provide the kind of functionality they seek for applications they create. Through UDDI, a user not only can discover a Web service but can get the WSDL document describing the Web service. You can learn more about UDDI from the Web site that support its standards, http://www.uddi.org .

Exactly how clients will discover and select Web services remains to be determined. One way is through directories such as UDDI. You can also discover a Web service by word of mouth or by internal communications within an organization. Departments within a large organization can disseminate information about Web services that they create. For example, a shipping department could publish a Web service for validating postal codes based on street addresses, cities, and states. The marketing department could provide a comparable service for validating e-mail addresses. By leveraging the computing talent within individual departments, Web services offer organizations a way to enjoy the benefits of decentralized organization while providing valuable corporatewide resources.

WSDL

Web Services Description Language, or WSDL, is an XML grammar for describing a Web service. Every computer hosting a Web service must have a WSDL document for describing the Web service. When a client computer adds a reference to a Web service, it gets a copy of the WSDL document for the Web service. The WSDL document describes the Web methods exposed by a Web service. The WSDL document also contains a specification of the SOAP message for passing arguments to and returning arguments from a Web service. The World Wide Web Consortium (W3C) manages the evolution of the WSDL grammar. At the time of this writing, you can use the following URL to tap into the Web services activities of the W3C: http://www.w3.org/2002/ws/ .

SOAP

SOAP is a computer protocol for exchanging information in a distributed computing environment. This is the major Web services technology enabling interaction among applications developed with heterogeneous computing systems or even among computers running disparate operating systems, such as Windows and UNIX.

The SOAP specification for exchanging information between computers has three main elements. First, the SOAP processing model defines the rules for exchanging information between a SOAP sender and a SOAP receiver. The SOAP message can pass through one or more intermediaries between the sender and the ultimate receiver. The processing model handles multiple types of exchanges, such as those transmitted from a sender to a receiver without a return response or those passed from sender to receiver with a return response. The second major element of the SOAP specification is the model for a SOAP document. This element defines the types of XML elements and attributes that compose a SOAP document, such as the SOAP message. The third element of the SOAP specification is the manner in which the SOAP documents are bound to an underlying protocol for transmitting messages between sender and receiver computers. At the time of this writing, the W3C is finalizing SOAP version 1.2. You will find the latest document specifying this set of SOAP standards at http://www.w3.org/TR/soap12-part1/ .

 


Programming Microsoft Visual Basic. NET for Microsoft Access Databases
Programming Microsoft Visual Basic .NET for Microsoft Access Databases (Pro Developer)
ISBN: 0735618194
EAN: 2147483647
Year: 2006
Pages: 111
Authors: Rick Dobson

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net