This chapter is from the book

This chapter is from the book

Many of the challenges presented in the previous chapter revolve around
interoperability challenges on multiple operating systems and/or middleware
packages. These include high integration costs, lack of industry standards, and
high deployment costs. Web Services have the potential of addressing many of
these issues, and this chapter discusses the cornerstone technologies that are
essential for Web Services. These include Extensible Markup Language (XML),
Service-Oriented Access Protocol (SOAP), Web Services Definition Language
(WSDL), and Universal Description, Discovery and Integration (UDDI). Chapter 3
then follows with emerging standards around security, scalability, and so on.
This chapter concludes with a discussion on how Web Services can augment the
technologies discussed in Chapter 1.

Before delving into the underlying technologies, let's take a broad view
of the various roles of a Web Services architecture, which is also sometimes
referred to as a service-oriented architecture.

Service-Oriented Architecture (SOA)

An SOA is called service oriented because the central idea is that a
client (which can be a person or a computer) needs a particular set of services
to be fulfilled. Of course, before the client can request the service, it needs
to find the provider (which previously published the service); this location
service is provided by a service broker, who typically operates a
repository. Upon request, the service broker returns a document that allows the
client to first locate and then bind to the provider. Thus, the three key
roles in an SOA are

Client

Service broker

Service provider

Figure 21 illustrates the roles and the sequence of events in an
SOA.

The role of the broker may not be immediately obvious, especially for a small
set of services. However, keep in mind that a client may ask for multiple
services, each of which may have a different provider. Registering the services
in a central registry that can be searched by clients provides them with the
flexibility needed to perform queries based on a dynamically changing set of
criteriathey do not have to statically bind themselves to the provider.
Without a registry, the client would have to hard-code the location of the
service provider, which can obviously lead to maintenance difficulties.

SOAs have been present for a number of years, but, again, they have been used
with proprietary protocols and technologies. For example, both CORBA and DCOM
provide a naming service and a location service. With the advent of Web Services,
the idea has been more widely adopted because of the use of standards-based
technologies. The most fundamental standard of all is a common language for
describing datathis is the role of XML.