US 7,590,988 B2
Dynamic service generation for legacy components
Andrew D. Milligan, Redmond, Wash. (US); Donald F. Box, Bellevue, Wash. (US); Harris Syed, Kirkland, Wash. (US); Max Attar Feingold, Bellevue, Wash. (US); and Saji Abraham, Bellevue, Wash. (US)
Assigned to Microsoft Corporation, Redmond, Wash. (US)
Filed on Mar. 08, 2005, as Appl. No. 11/75,417.
Prior Publication US 2006/0206599 A1, Sep. 14, 2006
Int. Cl. G06F 3/00 (2006.01); G06F 7/00 (2006.01); G06F 15/177 (2006.01); G06F 9/44 (2006.01)
U.S. Cl. 719—328  [707/9; 709/220; 717/100] 18 Claims
OG exemplary drawing
 
1. A method of generating a dynamic web service for legacy application components that are not developed to communicate within a web service environment by allowing an administrative event to cause the generation of the dynamic web service during initialization of the legacy application components, the method comprising acts of:
receiving, at a computer, a request to initialize an application, the application including one or more legacy components of the legacy application components that are not developed to communicate with web service clients of the web service environment;
based on the initializing of the application that initializes the one or more legacy components, identifying that an administrative configuration setting indicates that the dynamic web service for the one or more legacy components is to be generated upon the initialization of the application;
based on the administrative configuration setting of the administrative event, accessing metadata that describes an interface description for communicating with the one or more legacy components;
using the metadata to automatically generate the dynamic web service consistent with the interface description for allowing the web service clients of the web service environment to communicate with the one or more legacy components through a translation process;
receiving a web service request message from the web service clients, the web service request message including one or more operations for requesting services offered by the one or more legacy components;
based on the one or more operations, using the dynamic web service to make one or more legacy calls to the one or more legacy components; and
upon termination of the application, automatically terminating the dynamic web service such that upon subsequent initialization of the application, the dynamic web service is regenerated based on the metadata that exists at a time of the subsequent initialization such that any changes to the interface descriptor for communicating with the one or more legacy components that occurred subsequent to the initialization of the application will be reflected in the regenerated dynamic web service.