Web services

 

+

Search Tips   |   Advanced Search

 

Web services is middleware that allows one to connect applications together no matter how each application is implemented or where it is located. Web services operate at a level of abstraction that is similar to the Internet; they can work with any operating system, hardware platform or programming language that can be Web-enabled.

The core technologies on which Web services are developed and implemented include:

XML Describe and map data into and out of any application or programming language.
Web Services for J2EE v1.1 Specification that defines the programming model and run-time architecture for implementing Web services based on the Java language.
JAX-RPC v1.1 Allows one to develop SOAP-based interoperable and portable Web services and Web services clients.
WSDL v1.1 XML-based language used to create a description underlying applications, and represents an interface between the underlying application and other Web-enabled applications.
SOAP v1.1 Core communications protocol for the Web, and most Web services use this protocol to talk to each other.
SAAJ v1.2 SOAP messaging that works behind the scenes in the JAX-RPC implementation. We can also use this API to directly write SOAP messaging applications rather than using JAX-RPC. SAAJ allows you to do XML messaging from the Java platform by making method calls by creating, sending and consuming XML messages over the Internet.

WebSphere Application Server also provides other mechanisms that can help you get the most out of your Web services:

A private UDDI registry

A private UDDI registry provides a way to publish and discover information about Web services that are available within and through your organization. Use it to make your Web services available to people within your organization, or beyond your organization. A group of companies can use it to share their Web services, or to make them available to others outside the group. At its simplest, a private UDDI registry does for Web services what a business telephone directory does for business addresses and telephone numbers. However, a private UDDI registry is much more than just a directory. It needs to be in order to harness the considerable power and flexibility of Web services. If you publish your Web service to UDDI, you make it available for other people or applications to discover and reuse. This saves development time, effort and cost, and helps minimize the need to maintain several different implementations of the same application.

A Web Services Invocation Framework

SOAP bindings for Web services are part of the WSDL specification. So when you think of using a Web service, you probably think of assembling a SOAP message and sending it across the network to the service endpoint, using some SOAP client API. The WSDL specification allows for extensibility points which can describe alternate ways of invoking a Web service. A WSIF client can make use of these non-SOAP descriptions to invoke a service in a more efficient way. For example, a Web service provider might offer a SOAP binding for the service and a local Java binding that allows you to treat the local service implementation (a Java class) as a Web service. If the client is deployed in the same environment as the service, then the local Java binding for the service can be used. This provides more efficient communication with the service by making direct Java calls rather than sending and receiving SOAP messages.

To deploy a Web service as a WSIF-enabled service, you first develop and deploy the Web service, then you develop the WSIF client based on the WSDL document for that Web service.

The Web service enablement of the service integration bus (SIBWS)

Through the SIBWS, one can...

  • Take an internal service that is available at a service destination, and make it available as a Web service.

  • Take an external Web service, and make it available at a service destination.

  • Use the Web services gateway to map an existing service - either an internal service, or an external Web service - to a new Web service that appears to be provided by the gateway.