Levels of A Component Framework

263 Contents

8.1 Service Oriented Architecture

8.1.1 8.1.2 8.1.3 8.1.4 8.1.5 8.1.6 8.1.7

8.2 SOAP Communication Protocol

8.2.1 The SOAP Message Format 8.2.2 The SOAP Section 5 Encoding 8.2.3 SOAP Communication Styles 8.2.4 Binding SOAP to a Transport Protocol

8.3 WSDL for Web Service Description

8.3.1 The WSDL 2.0 Building Blocks 8.3.2 Defining a Web Service’s Abstract Interface 8.3.3 Binding a Web Service Implementation 8.3.4 Using WSDL to Generate SOAP Binding 8.3.5 Non-functional Descriptions and Beyond WSDL

8.4 UDDI for Service Discovery and Integration

8.4.1 8.4.2 8.4.3 8.4.4

8.5 Developing Web Services with Axis

8.5.1 Server-side Development with Axis 8.5.2 Client-side Development with Axis 8.5.3 8.5.4

8.6 OMG Reusable Asset Specification

8.6.1 8.6.2 8.6.3 8.7 Summary and Bibliographical Notes Problems Cha pt e r 8 We b Se rvic e s A Web service is a software function or resource offered as a service; remotely accessed over the “web”; and, has programmatic access using standard protocols. A Web service is an interface that describes a collection of operations that are network accessible through standardized XML messaging. Web services fulfill a specific task or a set of tasks. A Web service is described using a standard, formal XML notion, called its service description that provides all the details necessary to interact with the service including message formats, transport protocols and location. While there are several definitions available it can be broadly agreed that a Web service is a platform and implementation independent software component that can be, • Described using a service description language • Published to a registry of services • Discovered through a standard mechanism • Invoked through a declared API, usually over a network • Composed with other services Web services are characterized as loose coupling of applications—clients and service providers need not be known a priori. The underlying mechanism that enables this is: publish-find-bind, or sometimes called find-bind-execute. The application can be developed without having to code or compile in what services you need. Similarly, when service provider deploys a service, it does not need to know its clients. In summary, 1 Service publishes its description; 2 Client finds service based on description; and, 3 Client binds itself to the service. Ivan Marsic • Rutgers University 264 The only common thing across Web services is the data format ontology. There is no API’s involved, no remote service invocation. Each “method” is a different service; invocation is governed by the “service contract.” A web site portal provides a collection of Web services. Tom Gruber, What is an Ontology? Online at: http:www-ksl.stanford.edukstwhat-is-an- ontology.html A closer look at Microsofts new Web services platform, Indigo, from the same source. http:www.eweek.comarticle20,1759,1763162,00.asp Web services essentially mean using SOAP Remote Procedure Call. Web services function in the information “pull” mode. The reason for this is firewalls, which allow only pulling of the information with Web services. Although HTTP 1.1 allows keeping state on the server, it is still a “pull” mode of communication. The “pull” mode is not appropriate for distributing real-time information; for this we need the “push” mode. If we want to use Web services in the “push” mode, we have two options: 1. Use tricks 2. Web services pushing unsolicited notification In the first case, we have an independent broker to which the clients that are to receive notifications should connect. The broker is in the trusted part of the network and it helps to push information to the client of the Web service. In the second case, the Web service standard needs to be modified to allow pushing information from the server. An important issue that needs to be considered is whether this capability can lead to denial-of-service attacks. Peer-to-peer communication is also an issue because of firewalls. So, What the Heck Are Web Services? http:www.businessweek.comtechnologycontentfeb2005tc2005028_8000_tc203.htm A Milestone for Web Services http:www.businessweek.comtechnologycontentfeb2005tc2005028_4104_tc203.htm GENERAL: http:www.businessweek.comtechnologyindex.html Web Services Leaders Submit Key Messaging Spec: A group of leading Web services proponents, including Microsoft and Sun Microsystems, on Tuesday announced the joint submission of a key Web services specification to the World Wide Web Consortium W3C. http:www.eweek.comarticle20,1759,1634158,00.asp Read how this could signal a turning point in the battle over Web services specifications intellectual property rights.