The original JBoss OSGi for WildFly AS (aka “JBOSGi”), along with the entire OSGi effort has been discontinued by RedHat during the alpha-phase of the WildFly AS 8 release. While the overall reasoning for abandoning long-term OSGi efforts (OSGi spec is being superseded by Project Jigsaw and suffers from architectural entropy and losing the sight of its primary purpose) is sound, the immediate need for OSGi-style modularity in WildFly cannot be denied.
Some of the functionality lost with the disappearance of JBOSGi for WildFly would be:
- Multi-versioning of OSGi bundles
- Zero-downtime bundle deployment, discovery and lifecycle callbacks
- Configurable service architecture, including declarative services
Since this functionality cannot be found in WildFly at present, I’m going to continue with the maintenance efforts of the base JBOSGi plugin for WildFly insofar I find it useful.
What you can expect to be supported and maintained:
- Support for new versions of JavaSE platform
- Provide releases for future versions of WildFly AS
- Bug fixes in the implementation of Core OSGi Specification
- WildFly domain integration and CLI/API bundle management
- Improving interoperability between plain JEE and OSGi modules
Installation
You can download JBOSGi by a direct download via the following links. Replace X.Y.Z.Final with an appropriate version number:
- Installer – https://repository.jboss.org/nexus/content/repositories/releases/org/jboss/osgi/distribution/jbosgi-installer/X.Y.Z.Final/jbosgi-installer-X.Y.Z.Final-installer.jar
- TAR GZ Overlay Patch – https://repository.jboss.org/nexus/content/repositories/releases/org/jboss/osgi/wildfly/jbosgi-wildfly-build/X.Y.Z.Final/jbosgi-wildfly-build-X.Y.Z.Final-patch.tar.gz
- ZIP Overlay Patch – https://repository.jboss.org/nexus/content/repositories/releases/org/jboss/osgi/wildfly/jbosgi-wildfly-build/X.Y.Z.Final/jbosgi-wildfly-build-X.Y.Z.Final-patch.zip
You can also get the same artifacts via Maven from JBoss Releases Repository:
<dependency> <groupId>org.jboss.osgi.distribution</groupId> <artifactId>jbosgi-distribution</artifactId> <version>X.Y.Z.Final</version> <classifier>installer</classifier> <type>jar</type> </dependency>
or
<dependency> <groupId>org.jboss.osgi</groupId> <artifactId>jbosgi-wildfly-build</artifactId> <version>X.Y.Z.Final</version> <classifier>patch</classifier> <type>tar.gz</type> </dependency>
or
<dependency> <groupId>org.jboss.osgi</groupId> <artifactId>jbosgi-wildfly-build</artifactId> <version>X.Y.Z.Final</version> <classifier>patch</classifier> <type>zip</type> </dependency>
Finally, activate your JBOSGi subsystem as demonstrated in standalone/configuration/standalone-osgi.xml
JBOSGi Project Sources
The project forks are hosted on GitHub in the JBOSGi Organization.
JBOSGi 2.5.2 and 2.4.2 Released: WAB Fragments!
I am pleased to announce the releases of JBOSGi 2.5.2.Final and JBOSGi 2.4.2.Final These releases resolve long-outstanding issues with OSGi fragment deployment and WAB fragment resource accessibility with WildFly 10 and 9 respectively.
JBOSGi 2.4.1 and 2.5.1 Maintenance Releases
JBOSGi 2.5.1.Final (WildFly 10) and JBOSGi 2.4.1.Final (WildFly 9) containing the fix for JBOSGI-792 Initial bundles fail to resolve if runtime name differs have been released. If anyone needs this fix for JBOSGI 2.3.1.Final (WildFly 8) please let me know.
JBOSGi 2.5.0.Final for WildFly 10 Released!
I am pleased to announce the release of JBOSGi 2.5.0.Final for WildFly 10. This release targets WildFly 10.0.0, and contains WildFly 10-related integration changes.
JBOSGi 2.4.0.Final for WildFly 9 Released!
I am pleased to announce the release of JBOSGi 2.4.0.Final for WildFly 9. This release targets WildFly 9.0.2 but should be compatible with all WildFly 9 minor releases, and contains OSGi component upgrades and WildFly 9 integration changes.
JBOSGi 2.3.1.Final for WildFly 8.2.x Released
Announcing the release of JBOSGi 2.3.1.Final for WildFly 8.2.x. This release contains stability improvements, enhances operating system compatibility and increases integration with WildFly module system.