Community
Participate
Working Groups
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
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
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.