Administer bundle repositories
OSGi applications can share many common utility bundles. To simplify maintenance, and reduce the application footprint, the application does not have to include its own copy of each utility bundle. Instead, bundles can be hosted in a bundle repository, from where they are retrieved during deployment. You can administer bundles and composite bundles held in the internal bundle repository of the product, and also add links to external bundle repositories.
WebSphere Application Server includes an internal bundle repository, in which we can store the bundles and composite bundles for the OSGi applications. The external bundle repositories are bundle repositories that are available outside of WAS. If the OSGi applications reference bundles stored in an external bundle repository, configure a link (name and URL) to the repository so that the provisioner can retrieve the bundles when required. When an OSGi application is imported as an asset, the provisioner attempts to satisfy all its dependencies using the contents of the asset, the contents of the internal bundle repository, and the contents of any available external bundle repositories.
You can link to any external bundle repository that complies with the OSGi Alliance RFC-0112 Bundle Repository Draft Specification. Such a repository consists of a website with a bundle repository XML file that describes an OSGi-compliant repository. Depending on how the external bundle repository is implemented, you might not be able to use it to provision services, or to store composite bundles or bundles referenced by composite bundles.
If the bundle includes Blueprint XML files that specify service or reference elements, and the bundle is included in an EBA asset or installed in the internal bundle repository, then these elements are respected during provisioning and appropriate services are provisioned when needed. For more information, see Provisioning for OSGi applications.
Subtopics
- Move bundles from an OSGi application to a bundle repository
You can change the configuration of an enterprise OSGi application so that bundles and composite bundles that were directly contained in the enterprise bundle archive (EBA) file are instead pulled in by reference and provisioned from a repository.
- Administer bundles in the internal bundle repository
Use the administrative console to list, delete, add, or show further details for bundles and composite bundles that are held in the bundle repository included in the product.
- Administer links to external bundle repositories
Use the administrative console to list, delete, add, modify, or show details for links to external bundle repositories.
- Interacting with the OSGi bundle cache
The bundle cache is a cell-wide store (or server-wide for single-server systems) of bundles referenced by OSGi applications, and that have been downloaded from both internal and external repositories. You can interact with the bundle cache using either the administrative console, or the methods of the OSGi BundleCacheManager MBean.
Parent topic: Administer OSGi applications
Related concepts
OSGi bundles and bundle archives
Related tasks
Update bundle versions for an EBA asset Maintain an OSGi composition unit Checking the bundle download status of an EBA asset Checking the update status of an OSGi composition unit Export and import a deployment manifest file
OSGi Alliance RFC-0112 Bundle Repository Draft Specification