> While I'm the one responsible for using embedded Felix in all Java-based
> Atlassian products, I would generally agree with my good friend Chad that it

Hi Don!  Interestingly, I've spend the last few months reworking a webapp that 
hosts an  embedded felix container.  

> is generally not advisable unless you have very specific extensibility
> requirements that could be serviced via OSGi.
> The main issue has to do with the different "levels" (classloaders) code runs
> in, so if you have lots of code back down in the web app, you have to be very
> careful how and where you expose that up to OSGi bundles.  For example, if

I've been re-architecting an app that embedded a felix container into an 
existing web app.  This came about because of a requirement for hot deployment 
that arrived after the "host" app was already built and deployed into the 
field.  The classloader bit itself is tricky ( actually, though, it's also a 
great case study deep diving on classloaders).  The biggest problem for me came 
out of the fact that a lot of classes were needed by both the host app and the 
bundles that we're going to be installed into the container.

I found myself wishing I had time to re-implement the host app as an OSGi app.  
  

> Furthermore, many, if not most, web application libraries are built assuming
> the context classloader has full access to the whole webapp, which isn't the
> case in OSGi land where the CCL is actually undefined.

For instance, Hibernate. 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to