[infinispan-dev] help with Infinispan OSGi

Brett Meyer brmeyer at redhat.com
Fri Dec 6 11:56:42 EST 2013


Sorry, forgot the link:

[1] https://hibernate.atlassian.net/browse/HHH-8214

Brett Meyer
Software Engineer
Red Hat, Hibernate ORM

----- Original Message -----
From: "Brett Meyer" <brmeyer at redhat.com>
To: "Randall Hauch" <rhauch at redhat.com>, "infinispan -Dev List" <infinispan-dev at lists.jboss.org>
Cc: "Pete Muir" <pmuir at redhat.com>, "Steve Jacobs" <sjacobs at redhat.com>
Sent: Friday, December 6, 2013 11:51:33 AM
Subject: Re: [infinispan-dev] help with Infinispan OSGi

Randall, that is *definitely* the case and is certainly true for Hibernate.  The work involved:

* correctly resolving ClassLoaders based on the activated bundles
* supporting multiple containers and contexts (container-managed JPA, un-managed JPA/native, etc.)
* fully supporting OSGi/Blueprint services (both for internal services as well as externally-registered)
* bundle scanning
* generally working towards supporting the dynamic nature
* full unit-tests with Arquillian and an OSGi container

It's a matter of holistically supporting the "OSGi way" (for better or worse), as opposed to simply ensuring the library's manifest is correct.

There were a bloody ton of gotchas and caveats I hit along the way.  That's more along the lines of where I might be able to help.

I'm even more interested in this effort so that we can support hibernate-infinispan 2nd level caching within ORM.  On the first attempt, I hit  ClassLoader issues [1].  Some of that may already be resolved.

The next step may simply be giving hibernate-infinispan another shot and correcting things as I find them.  In parallel, feel free to let me know if there's anything else!  ORM supports lots of OSGi-enabled extension points, etc. that are powerful for users, but obviously I don't have the Infinispan knowledge to know what would be necessary.

Thanks!

Brett Meyer
Software Engineer
Red Hat, Hibernate ORM

----- Original Message -----
From: "Randall Hauch" <rhauch at redhat.com>
To: "infinispan -Dev List" <infinispan-dev at lists.jboss.org>
Cc: "Pete Muir" <pmuir at redhat.com>, "Brett Meyer" <brmeyer at redhat.com>
Sent: Friday, December 6, 2013 10:57:23 AM
Subject: Re: [infinispan-dev] help with Infinispan OSGi

Brett, correct me if I’m wrong, but isn’t there a difference in making some library *work* in an OSGi environment and making that library *naturally fit well* in an OSGi-enabled application? For example, making the JAR’s be OSGi bundles is easy and technically makes it possible to deploy a JAR into an OSGi env, but that’s not where the payoff is. IIUC what you really want is a BundleActivator or Declarative Services [1] so that the library’s components are readily available in a naturally-OSGi way.

[1] http://blog.knowhowlab.org/2010/10/osgi-tutorial-4-ways-to-activate-code.html

On Dec 6, 2013, at 7:30 AM, Mircea Markus <mmarkus at redhat.com> wrote:

> + infinispan-dev
> 
> Thanks for offering to look into this Brett!
> We're already producing OSGi bundles for our modules, but these are not tested extensively so if you'd review them and test them a bit would be great!
> Tristan can get you up to speed with this.
> 
> 
>>> Sanne/Galder/Pete,
>>> 
>>> Random question: what's the current state of making Infinispan OSGi friendly?  I'm definitely interested in helping, if it's still a need.  This past year, I went through the exercise of making Hibernate work well in OSGi, so all of challenges (read: *many* of them) are still fairly fresh on my mind.  Plus, I'd love for hibernate-infinispan to work in OSGi.
>>> 
>>> If you're up for it, fill me in?  I'm happy to pull everything down and start working with it.
>>> 
>>> Brett Meyer
>>> Software Engineer
>>> Red Hat, Hibernate ORM
>>> 
>> 
> 
> Cheers,
> -- 
> Mircea Markus
> Infinispan lead (www.infinispan.org)
> 
> 
> 
> 
> 
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev




More information about the infinispan-dev mailing list