Software Testing Social Network

Free Software Testing Tutorial and Quality Assurance Portal

Home Featured Articles Software Testing SOA and Web Services Testing Introduction to Web Services

Introduction to Web Services

Some background:

Before the advent of web services, remote access required specific platform and language-specific protocols. For instance, DCOM requires RPC calls, CORBA requires IIOP (Internet Inter-ORB Protocol), Enterprise JavaBeans (EJBs) requires a Remote Method Invocation (RMI) Protocol and so on.

Simple Object Access Protocol (SOAP) and XML, the two key pieces of the Web services architecture which render it platform independent and enable client to communicate over standard protocol (usually HTTP).

Introduction to Web Services

Web service is a code, which can be remotely invoked using HTTP. Web services involve distributed computer architecture environment, where several computers (over the network) try to communicate in a common language.

A Web service has several enumerations, classes, interfaces and structures that enable black box functionality for remote clients. A web service defines a business object that executes some business problem like reading data source and then waits for the next request.

Web service consumer may be browser-based, console-based or windows forms-based client. Irrespective of the type, in every case there is an intervening proxy client through which the Web service communicates. The proxy uses same set of standards and protocols (HTTP or optionally SOAP messages) while forwarding request to the web service.

Web Service - Standards

There are various standards for web services. Originally, these were based on XML, XML namespaces, and XML schema. More recently, UDDI, SOAP, WSDL, ebXML and other security standards have been developed. Some of these are elaborated below-

UDDI (Universal Description, Discovery, and Integration) – This protocol describes available services components and enables businesses to register with an Internet directory using XML and HTTP(S) mechanisms.

SOAP (Simple Object Access Protocol)- This protocol initiates conversations with a UDDI Service and makes object access simple by allowing applications to invoke object methods or functions, residing on remote servers.

WSDL (Web Service Description Language)- WSDL is XML-based service IDL (Interface Definition Language) which defines service interface and its implementation characteristics. It is referred by UDDI entries and describes the SOAP messages that define a particular Web service.

ebXML (e-business XML) – It defines business processes, core components, messaging services, registry and repository and trading partner agreements.

 

 

Web Services Technologies

There are different technologies for developing Web services. Some of these are outlined below-

Microsoft has developed C #(spelled as C-Sharp) for web services and .NET framework. Microsoft ‘s Visual Studio .NET also supports the same.

Sun Microsystems has various web services like Java Server Pages (JSPs),  Java Servlets, Enterprise JavaBeans (EJB) architecture and other Java 2 Enterprise Edition (J2EE) technologies.

Web Services Tool

There are a number of tools for developing Web services like the following -

Forte Java IDE

Oracle JDeveloper

WebGain Studio.

Sun ONE (Open Network Environment) by Sun Microsystems

and is planning to push Java forward as a platform for Web services. It is developing Java APIs for XML-based remote procedure calls and for looking up services in XML registries - two more JAX family APIs: JAX/RPC (Java API for XML Remote Procedure Calls) and JAXR (Java API for XML Registries). These will wrap up implementations of Web services standards, such as SOAP and UDDI.

IBM also for its part has already developed a suite of early-access tools for Web services development. They are Web Services Toolkit (WSTK), WSDL Toolkit, and Web Services Development Environment (WSDE).

Apache Axis is an Open Source SOAP server and client mechanism for inter-application communication between systems written in arbitrary languages, across the Internet.

What is the Implementation?

A service provider creates a web service which is then registered using WSDL in UDDI registry, ebXML registry/repository; either. This service may be requested by another service or service consumer by UDDI and/or ebXML registry query. The request also includes a request to bind the service using SOAP. Following this the service sends response (data and messages) over HTTP as a XML document. 


Comments (0)Add Comment

Write comment
You must be logged in to post a comment. Please register if you do not have an account yet.

busy
  Attention! For US visitors deep discounted electronics products available! CLICK HERE to check it out.