[hibernate-dev] Weekly meeting (4/19)
Andersen Max
max.andersen at redhat.com
Tue Apr 20 11:00:39 EDT 2010
btw. i'm about to go on a roadtrip to DK so won't online much the next couple of days.
I'll try and see if I can create a really simple (eclipse based) example outlining the
issue - but otherwise the EclipseLink links and "google hibernate osgi" should
give a good set of pointers and "inspiration" :)
/max
On Apr 20, 2010, at 16:00, Steve Ebersole wrote:
> On Tue, 2010-04-20 at 15:28 +0200, Andersen Max wrote:
>> Hi,
>>
>> Noticed this part:
>>
>> [10:21] <sebersole> the problem with osgi is as soon as you ask anyone hat that means they have zero clue
>> [10:22] <sebersole> "ok you want 'osgi support', how do i do that? what does that mean"
>> [10:22] <sebersole> and then silence...
>> [10:22] <sebersole> thats been my experience at any rate
>>
>> So my mails about the subject must have been lost or I was not being clear on the subject ;)
> Which mails? I just searched my local hibernate-dev store for "osgi"
> and got zero hits. Perhaps you can point me to them again?
>
>> "Hibernate osgi support" for me means: Provide an option to use the classloader of the calling client/SessionFactory creator instead of
>> current thread context classloader; essentially fix all refs to ResourceHelper.classForName to always use the classloader of the SessionFactory.
> This breaks usage in more traditional classloaders. The issue is that
> we cannot "always use the classloader of the SessionFactory". We have
> to either (1) know the type of environment we are running in (which
> afaik is not really possible), or (2) the user must tell us the type of
> classloading environment (what class look up schemes should we use).
>
> I assume you mean either ReflectHelper or ConfigHelper. ConfigHelper
> does not always just look to the TCCL. It tries a number of
> classloaders. The problem is that we have to try one or the other
> first. And ReflectHelper does allow passing in which classloader to
> use. Of course the caller of it must be able to know.
>
> So lets take an example near and dear to your heart.
> org.hibernate.mapping.PersistentClass#getMappedClass
>
> How do you propose, *specifically*, that method look to work properly in
> both osgi environments and traditional classloader environments?
>
> Because the only way I see is to use a pluggable delegate for class path
> resource resolution. And the problem there is the context of this
> delegate (aka how does PersistentClass get access to it?).
>
>>
>> That would allow Hibernate to load entities from osgi bundles it does not know about via osgi manifest dependencies.
>>
>> This possibly also requires adding a set of osgi headers to the manifest but I don't even think we need to go there (nor can we easily do that because not
>> all dependencies we go are available as osgi bundles)
>>
>> One way to test this is if you can make http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/trunk/examples/org.eclipse.persistence.example.jpa.rcp.comics/
>> run with Hibernate jars instead of EclipseLink jars.
>>
>> EclipseLink guys documented some of their work on this here:
>> http://wiki.eclipse.org/EclipseLink/Development/OSGi
>> http://wiki.eclipse.org/EclipseLink/Development/OSGi_Proof_of_Concept
>> (and others: http://wiki.eclipse.org/Special:Search?search=eclipselink+osgi&go=Go)
>>
>> The guys working on EnterpriseOSGI would also have to solve this somehow so maybe it is
>> outlined in that area too - I haven't looked deep enough in that yet.
> You mean the spec? I have looked briefly and all i really saw was a
> bunch of requirements, not any solutions. Perhaps you mean some other
> source.
>
>>
>> /max
>>
>>
>> On Apr 19, 2010, at 18:43, Steve Ebersole wrote:
>>
>>> First meeting. Went well.
>>>
>>> 1) We discussed our experiences with time-boxing in the 3.5 releases.
>>> Generally positive. Some felt 2 weeks may have been a bit too often.
>>> We will play with time moving forward to find the best balance which may
>>> be an alternation: slow (alphas), fast (betas and crs), slow (past
>>> final).
>>>
>>> 2) 3.6
>>> 2.a) will require at least JDK 1.5
>>> 2.b) merge annotation code into core module
>>> 2.c) will revist the idea of merging entitymanager into core module
>>> during next meeting.
>>> 2.d) specj use case (eagerly loaded key-many-to-one)
>>>
>>> 3) Hudson plan
>>>
>>> 4) Documentation consolidation (core, annotations, jbc, envers,
>>> entitymanager)
>>>
>>> 5) docs.jboss.org issues. Archiving release docs versus indexing
>>> engines. index.html pages.
>>>
>>> I have attached the log.
>>>
>>> --
>>> Steve Ebersole <steve at hibernate.org>
>>> http://hibernate.org
>>> <meeting-2010-04-19.txt>_______________________________________________
>>> hibernate-dev mailing list
>>> hibernate-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
>
>
> --
> Steve Ebersole <steve at hibernate.org>
> http://hibernate.org
>
More information about the hibernate-dev
mailing list