Access to web services
AssigneeInternational Business Machines Corporation
InventorsPaul Zachary Fremantle, Simon Antony James Holdsworth, William Arpad Nagy, Christopher Edward Sharp, Sanjiva Weerawarana
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsPaul Zachary Fremantle, Simon Antony James Holdsworth, William Arpad Nagy, Christopher Edward Sharp, Sanjiva Weerawarana
Estimating the term…
The present invention provides a web service gateway which enables a web client to access a target service which does not provide a transport mechanism with which the client can communicate. The gateway imports a target service document describing the target service interface, end point addresses and supported transport mechanisms, and then modifies it by adding end point addresses and transport mechanisms supported by the gateway. A client may then access the target service by obtaining the modified document and sending a request to a gateway provided end point address using the associated transport mechanism. The gateway then forwards the request to the target service by converting the request and forwarding it to an end point address and transport mechanism specified in the target service document.
A computer-implemented method for accessing a target service in a target server comprising:
A gateway apparatus for accessing a target service in a target server comprising:
Dependencies are inferred from the claim text.
From the US filing history. Foreign family members aren’t listed.
Network directories; Name-to-address mapping: directories for service discovery
Protocols: based on web technology, e.g. hypertext transfer protocol [HTTP]
Provisioning of proxy services: data redirection of data network streams
Provisioning of proxy services: conversion or adaptation of application format or content
About 1 year 1 month of term left · ends 27 Nov 2027 (estimated)
The present invention relates to provision of web services and more particularly to facilitating client access to such services.
Over recent years it has become commonplace for a business to provide a web site on the Internet which, for example, enables a web client to purchase goods from the business over the world wide web. Following on from this success it has more recently become a requirement to handle more complex e-business applications on the Internet which, for example, enable business to business communication and this requirement has been satisfied by the arrival of Web services. Web services are modular and enhanced e-business applications that enable programmatic interaction between applications across the Internet. Based on shared, open, and emerging technology standards and protocols, such as SOAP (Simple Object Access Protocol), UDDI (Universal Description, Discovery and Integration), and WSDL (Web Service Definition Language), Web services can communicate, interact, and integrate with heterogeneous applications, irrespective of their implementation formats. Web services can interact with one another across the Internet to facilitate dynamic integration between businesses, suppliers, partners, and customers.
For example, a web service which provides an e-business application publishes its URL in a well known UDDI directory. A client can then obtain the URL from the UDDI registry and contact the e-business using the URL in order to obtain a WSDL document. The WSDL describes the interface provided for clients by the service e-business application, one or more transport mechanisms, for example SOAP over HTTP, (HyperText Transport Protocol) and an end point address for each transport mechanism. Once a client has the WSDL it can invoke the interface via the specified end point using the specified transport mechanism. Further if the client has a e-business application with which the service e-business application may wish to communicate the client and service may exchanges WSDL documents in order to make this possible.
The invention will now be described, by way of example only, with reference to a preferred embodiment thereof, as illustrated in the accompanying drawings, in which:
FIG. 1 is a schematic diagram of a data processing environment in which the preferred embodiment of the present invention can be advantageously applied;
FIG. 2 is a schematic diagram of a client accessing a target service according to the prior art;
Note that in the figures like numbers are used to denote like parts.
FIG. 1 is a block diagram of a data processing environment in which the preferred embodiment of the present invention can be advantageously applied; In FIG. 1, a client/server data processing host 10 is connected to other client/server data processing host 12 and 13 via a network 11, which could be, for example, the Internet. For example a client program could be executing on host 10 which is accessing a target service on host 12 via a gateway server on host 13. Client/server 10 has a processor 101 for executing programs that control the operation of the client/server 10, a RAM volatile memory element 102, a non-volatile memory 103, and a network connector 104 for use in interfacing with the network 11 for communication with the other client/servers 12 and 13.
FIGS. 2 and 3 are schematic diagrams which show examples of a client accessing a target service according to the prior art and the preferred embodiment of the present invention respectively. Note that the examples consider a simple target service which is a Time service with a single operation. This is for illustrative purposes only and in practice the target services are likely to be more complex. Further note that the preferred embodiment is described in terms of the target service providing a description of its interface and bindings in a WSDL document. However in practice this could be achieved in any document format which can be read and understood by a client and could, for example be XML. Further the WSDL document is made available via a UDDI directory. However in practice this could be via any source known to both the target service and client and which enables the required exchange of information. It could, for example, be a Naming or Directory service.