XML Web Service: adapting legacy applications


Since the beginnings of e-commerce, many applications have been developed to support the growing demand of online shopping systems. Many of the systems use proprietary implementations, often because of the lack of open standards at the time of development. However, the business processes these earlier-generation proprietary applications support will continue to be necessary in the future. This can be credited to the significant investments that have been made into these e-business applications.

In order to enable legacy applications to participate in dynamic e-business, we need to apply Web service technologies which will allow the services to be defined so as to hide some of the complexity of the legacy application interface.

Web services are the next stage of evolution for e-business. They view everything as a service that can be dynamically discovered and orchestrated, using messaging on the network. Enterprises can dynamically sell their services to others by publishing their Web services.

The Web services architecture (WSA) is an ideal technology to incorporate enterprise legacy applications into this new area. 
This is the next step in creating a Web-browser-based user interface that interacts with an enterprise application in order to enable program-to-program communication.
In order to enable legacy applications to participate in dynamic e-business, we need to apply Web service technologies which will allow the services to be defined so as to hide some of the complexity of the legacy application interface.

Fig 1: Service roles and interactionsThe conceptual architecture to access legacy applications via SOAP (XML WebService) covers the three components of a Web service: service provider, service request, and service broker. 
The service requestor is the consumer of a Web service, and is most likely a program running on the server of a business customer. 
The service provider program gets the information about available services from a UDDI repository, the service broker.

The Web service is described in the Web Services Description Language (WSDL) to support platform-neutral communications. 
When the service requestor has selected a service, it will use the WSDL description to find out how to access the service. 
Once found, the WSDL description is used to generate a SOAP request message that is sent to the application server, which acts as the service provider. 



About the author

Related Content



download pdfe-mail










Objective: to realize an Adapter for accessing a legacy application via SOAP.

The Web service Adapter has to be developed for each service to enable them for services access. It is typically a Java application program that connects to the backend server. This connection can be any communication link supported by the backend server.
The Web service Adapter may call one single backend application per SOAP service request.
The Web service Adapter hides the complexity of calling a backend function, and requires only to specify the subset of parameters absolutely necessary to execute a service.

Fig 2: architectureSOAP request is issued as a HTTP POST request. Using HTTP has the advantage that it can pass the normally available firewalls on Web servers.
The SOAP request message after passing the firewall is handled by the HTTP server. This server analyses the HTTP header information, and finds as part of the Uniform Resource Name (URN), the name of the SOAP router component. The request message is passed to the SOAP router specified. The SOAP router analyses the HTTP header, and finds the location of a Web service adapter. The router will then pass the request to the requested adapter.

In above example the legacy application is a Java Servlet-based application for the exchange of information (XML data) about tourist sector. This application is not described. 

The following description explains the main components in detail: the Web Service Adapter and the WSDL Service Description. Then, to verify the architecture described earlier, a sample implementation of the Service Requestor will be developed. The Soap Router component is built-in into various implementations of the SOAP protocol for different platforms (I use Apache SOAP Toolkit 2.2).

The Info-Service allows Service Requestor to get last-minute information about hotels located in Italy: 



Investment in application development is always an issue for the enterprise. As an open standard networked world begins to dominate the IT world, the preservation of these investments is likely to change. Today many enterprises are trying to change their legacy applications into component-oriented systems. A new option to facilitate this change can be the use of Web services technology. Elementary services from legacy applications can be wrapped as Web services and orchestrated to higher value services.