Browse Prior Art Database

Method and system for managing function modules dynamically in OSGi based web applications

IP.com Disclosure Number: IPCOM000199285D
Publication Date: 2010-Aug-30
Document File: 8 page(s) / 106K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method and system for managing function modules in OSGi based web applications. The idea of the method is to manage OSGi bundles of a function module as a whole dynamically. By using the method, an OSGi based application system will have the ability to dynamically install, start, stop or remove a function module, without restarting the whole application. The OSGi itself provided the ability to dynamically manage bundles, which are diverse java jar files, while the provided method presents the management ability on function module level. The provided system receives user requests on managing the function modules, and then calls the management interface to perform the actions. The metadata of the function modules is stored in an XML file, which is updated according to the update of the modules.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 43% of the total text.

Page 1 of 8

Method and system for managing function modules dynamically in OSGi based web applications

In the recent years, OSGiOpen Service Gateway Initiativetechnology has been widely used to develop dynamic java applications. It provides the ability for java plugins, i.e. OSGi java bundles, to collaborate through services. It also provides the mechanism to install and deploy services dynamically. OSGi based applications can dynamically install, start/stop java bundles to provide or remove some functions on demand. Usually users want to have the ability to install, update or remove a feature or a function as needed. At present they will meet at least the following problems:
1. From the usage point of view, users can only see a set of features, i.e. function modules, not the real java bundles contained in these modules. So they do not know which bundles are for a given function.

2. Commonly, for a function module, there are often multiple bundles. For example,
in a typical MVC based web application, a function module often contains a web bundle, an http controller bundle, a business logic bundle and a database access bundle. It's difficult for a user to remember all their bundle names.

It is very inconvenient for a user to install, start or stop all the bundles of a function one by one. In addition, it will be very error prone.

So users do need a method to manage the function modules directly, not by OSGi bundles. By using the method, users only need to install, start or stop a function module, and need not care about the OSGi bundles contained in the module. It makes the dynamic module management much easier.

Detailed description of the disclosure

The disclosure provides a method and system for managing function modules in OSGi based web applications. The core idea is to group the OSGi bundles of a function module and then manage them together on the function level. The present disclosure provides users with the ability to dynamically install, start, stop or remove the visual function modules of an OSGi web application, while hiding the disperse bundles, which users are not familiar with.

The main framework of the method and system is displayed in FIG. 1and FIG. 2. In FIG. 1, users send module management requests to the web application, within which, the HTTP processor forwards the requests to the module that implements our method through the management interface. Then the management implementation that implements the interface will receive the requests and perform the management functions within the OSGi environment. Meanwhile, it will access the XML metadata file and update the module information in it. FIG. 2 shows the

1

Page 2 of 8

internal architecture of our method and system. In the OSGi environment, an web application containing 2 function modules is deployed, with one containing 3 bundules and the other containing 4 bundles. The "Module Management Bundle" is the bundle that implements the present method. It can dynamically star...