Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 329903

Summary: Ship with a declarative services bundle installed and started by default
Product: [RT] Virgo Reporter: Alex Blewitt <alex.blewitt>
Component: unknownAssignee: Glyn Normington <glyn.normington>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: b.kapukaranov, glyn.normington
Version: unspecified   
Target Milestone: 3.0.0.M01   
Hardware: All   
OS: All   
Whiteboard:

Description Alex Blewitt CLA 2010-11-10 09:04:01 EST
Build Identifier: 2.1.0.RELEASE

It's really handy to build OSGi services with DS, but that's only of use if the runtime has a DS installed, and started, prior to the installation.

It would be really good if Virgo shipped with a DS bundle installed and ready to go by default; that way, people could take advantage of PARs which used DS but didn't ship with it.

Reproducible: Always
Comment 1 Glyn Normington CLA 2010-11-10 09:46:20 EST
This is certainly a reasonable requirement. However, as you will appreciate, there are likely to be many different environments, each requiring a different set of pre-installed bundles. Also we wouldn't want to add a "gratuitous" DS bundle into the standard Virgo web server package as it will slow down startup unnecessarily for users who are not interested in DS. For these reasons Virgo is designed so that it is easy to install and start such "early" bundles via user configuration rather than requiring a Virgo enhancement.

"Configuring the User Region"  in [1] describes the initialArtifacts property which is the property to use to achieve this. The DS bundle should be placed in repository/usr and the corresponding bundle artifact should be added to the end of the initialArtifacts list. Then the DS bundle will be installed and started before any user applications are deployed.

This will work equally well on either Virgo web server or virgo kernel, depending where you want to run DS bundles.

[1] http://www.eclipse.org/virgo/documentation/virgo-documentation-2.1.0.RELEASE/docs/virgo-user-guide/html/ch11.html#configuring-kernel
Comment 2 Borislav Kapukaranov CLA 2011-02-03 03:33:01 EST
As of the upcoming 3.0.0 release Virgo will support Declarative Services out-of-the-box in the user region. This month we plan to release the first milestone, which will also contain that functionality. You can also sync the latest sources and build them locally, they already contain that change.