On Sat, Apr 30, 2011 at 04:26:42PM +1000, David Crossley wrote:
> Brian M Dube wrote:
> > 
> > Great, thanks. I'll gladly expand the documentation based on any
> > questions.
> 
> Perhaps some very high-level scenarios.
> 
> Does this mean that components such as
> Apache Cocoon blocks, e.g. Cocoon3 components
> and Apache Sling, Apache Jackrabbit
> can be readily utilised?

Good question.

The Apache Cocoon blocks, as currently shipped with Apache Forrest,
are not ready to drop into an OSGi environment. It looks like this is
also the case with Cocoon3, but that is only a guess based on the
website content and not the code.

It is possible to "wrap" a jar, which adds the manifest headers
necessary for OSGi. One scenario is to wrap each block along with all
its dependencies, possibly duplicating dependencies in each wrapped
block. Another scenario is to wrap each block as is and supply the
dependencies as individual bundles. But either way, the dependencies
have to be provided somehow. It's not as easy as having them on the
classpath in the non-OSGi sense.

For other OSGi-based projects, such as Apache Sling, absolutely. The
details depend on how they've set up their bundles (services? custom
manifest headers?), but in the end it's OSGi and there would be a way
to use it.

I should state that I'm no authority on OSGi. I'm learning as I go
here.

-Brian