Dynamic, real-time integration of software resources through services of a content framework
First Claim
1. A method of dynamically integrating software resources in a computing network, comprising steps of:
- selecting a collection comprising a plurality of software resources for integrating as a software service for deployment in a content aggregation framework, wherein at least one operation is invocable from each of the software resources;
programmatically building a markup language document to specify the operations invocable from the collection of software resources; and
using the content aggregation framework, at run time, to programmatically and dynamically integrate the collection of software resources into the content aggregation framework to carry out the software service provided by the collection, further comprising the steps of;
programmatically consulting the programmatically-built markup language document to determine the operations specified therein;
using the determined operations as a functional interface of a proxying component, wherein the proxying component is accessible from the content aggregation framework; and
deploying the software service in the content aggregation framework by using the functional interface of the proxying component to surface the software service in the content aggregation framework, wherein the functional interface of the proxying component represents, as operations invocable from the proxying component in the content aggregation framework, the operations specified in the markup language document as being invocable from the collection of software resources.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products are disclosed for dynamically integrating software resources (such as web services and other back-end software resources) using the services of a content framework (such as a portal platform). A portlet model is leveraged to allow programmatic portlets to serve as proxies for web services, thereby extending portlets beyond their traditional visual role. A deployment interface and a system interface are described for these portlet proxies. The deployment interface is used for composing new web services, and a composition tool is described. The system interface allows for run-time management of the web services by the portal platform. The service provider for a particular function may be bound to the portlet proxy at development time or at run-time.
-
Citations
19 Claims
-
1. A method of dynamically integrating software resources in a computing network, comprising steps of:
-
selecting a collection comprising a plurality of software resources for integrating as a software service for deployment in a content aggregation framework, wherein at least one operation is invocable from each of the software resources; programmatically building a markup language document to specify the operations invocable from the collection of software resources; and using the content aggregation framework, at run time, to programmatically and dynamically integrate the collection of software resources into the content aggregation framework to carry out the software service provided by the collection, further comprising the steps of; programmatically consulting the programmatically-built markup language document to determine the operations specified therein; using the determined operations as a functional interface of a proxying component, wherein the proxying component is accessible from the content aggregation framework; and deploying the software service in the content aggregation framework by using the functional interface of the proxying component to surface the software service in the content aggregation framework, wherein the functional interface of the proxying component represents, as operations invocable from the proxying component in the content aggregation framework, the operations specified in the markup language document as being invocable from the collection of software resources. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for dynamically integrating software resources in a computing network, comprising:
-
a processor; and
a memory coupled to the processor;a content aggregation framework adapted for supporting one or more plug-in components, each of which contributes content for aggregating in the content aggregation framework; a plurality of software resources, each comprising at least one invocable operation; a proxying component structured as one of the plug-in components; means for selecting a collection comprising a plurality of the software resources for integrating as a software service for deployment in the content aggregation framework; means for programmatically building a markup language document to specify the operations invocable from the collection of software resources; means for using the markup language document as a service description document specifying a functional interface of the proxying component; means for registering the service description document in a network-accessible registry; and means for using the content aggregation framework to programmatically and dynamically integrate the collection of software resources into the content aggregation framework at run-time to carry out the software service provided by the collection, further comprising; means for dynamically discovering the service description document, from the network-accessible registry, at run-time; means for programmatically consulting the dynamically-discovered service description document, by the content aggregation framework, to determine the operations specified therein; means for using the determined operations as the functional interface of the proxying component; and means for deploying the software service in the content aggregation framework, further comprising; means for using the functional interface of the proxying component to surface the software service in the content aggregation framework, wherein the functional interface of the proxying component represents, as operations invocable from the proxying component in the content aggregation framework, the operations specified in the service description document as being invocable from the selected collection of software resources; and means for programmatically binding, by the content aggregation framework, to the functional interface of the proxying component using the functional interface specified in the dynamically-discovered service description document, thereby enabling the operations invocable from the proxying component to be invocable from the content aggregation framework for carrying out the software service. - View Dependent Claims (11, 12, 13)
-
-
14. A method of using a proxying component to integrate software resources in a content aggregation framework, comprising:
-
defining, as a functional interface to the proxying component in the content aggregation framework, operations invocable from a collection comprising a plurality of software resources as operations invocable from the proxying component, wherein the proxying component is adapted for plugging in to the content aggregation framework and serves, when plugged in to the content aggregation framework, as a proxy for the collection of software resources that are thereby accessible from the content aggregation framework; specifying the defined functional interface in a service description document; registering the service description document in a network-accessible registry, thereby enabling the functional interface of the proxying component to be programmatically and dynamically discoverable at run time from the network-accessible registry; retrieving, by the content aggregation framework, the registered service description document for the proxying component from the network-accessible registry upon discovery thereof; plugging the proxying component in to the content aggregation framework by dynamically binding, by the content aggregation framework, to the functional interface of the proxying component using the functional interface specified in the retrieved service description document, thereby enabling the operations invocable from the proxying component to be invocable in the content aggregation framework; and using the functional interface at run time to invoke at least one operation invocable from the proxying component, wherein each of the invocations causes the proxying component to invoke a corresponding one of the operations invocable from the collection of software resources. - View Dependent Claims (15, 16, 17)
-
-
18. A computer program product for dynamically integrating software resources in a computing network, the computer program product embodied on one or more computer-readable media and comprising:
-
computer-readable program code for selecting a collection comprising a plurality of software resources for integrating as a software service for deployment in a content aggregation framework, wherein at least one operation is invocable from each of the software resources; computer-readable program code for programmatically building a markup language document to specify the operations invocable from the collection of software resources; and computer-readable program code for using the content aggregation framework, at run time, to programmatically and dynamically integrate the collection of software resources into the content aggregation framework to carry out the software service provided by the collection, further comprising; computer-readable program code for programmatically consulting the programmatically-built markup language document to determine the operations specified therein; computer-readable program code for using the determined operations as a functional interface of a proxying component, wherein the proxying component is accessible from the content aggregation framework; and computer-readable program code for deploying the software service in the content aggregation framework by using the functional interface of the proxying component to surface the software service in the content aggregation framework, wherein the functional interface of the proxying component represents, as operations invocable from the proxying component in the content aggregation framework, the operations specified in the markup language document as being invocable from the collection of software resources. - View Dependent Claims (19)
-
Specification