[wildfly-dev] Design Proposal: Build split and provisioning

Jason T. Greene jgreene at redhat.com
Thu Jun 12 10:32:21 EDT 2014


> On Jun 11, 2014, at 9:59 AM, Stuart Douglas <stuart.w.douglas at gmail.com> wrote:
> 
> It is kinda like Karaf, but we are not based on OSGi, and have no plans 
> to move.

The problem with using OSGi for the base modularity in WildFly, is that Java EE class-loading rules do not map well to it, so you ultimately end up with two classloading models. It also mandates it's own service model and brings in a vast amount of complexity that our server internals didn't really benefit from. Finally we felt the performance cost of it's dependency resolution algorithm was way too high (we wanted deterministic o(1) resolution)

That said, we did expect interest in building OSGi applications on a full application server, so our original plan with AS7 was to build a lightweight flexible modular class loader, that would be mappable to all known class loading models, including OSGi and Java EE. That became JBoss Modules.

AS7.x did ship with OSGi support based on JBoss Modules, however it had very little uptake with our users and customers. Instead there was more interest in just using our modularity layer directly.

Based on this, we decided to split off the OSGi layer into a separate optional project, and focus more energy to other areas which were in more demand. 

This isn't set in stone though. Ultimately WildFly is driven by what the community wants and of course, code contributions is the best vehicle.

-Jason





More information about the wildfly-dev mailing list