Hi folks!

There is currently a VOTE on the CDI EG about how to implement modularity.
It looks like a horizontal isolation approach will be selected.

I personally don't like that as this will NOT be backward compatible. Currently 
the BeanManager of the WebApp which receives the request will determine the 
Beans and Contextual Instances resolved for InjectionPoints and the Proxies. 

The EG likes to change this to switching the 'responsible' BeanManager 
depending on the JAR you are in. Similar to what EJBs do with switching the 
ThreadContextClassLoader. 


I'm not yet sure how to implement this to be honest. E.g. it's absolutely 
impossible to do this for @Dependent Beans which gets created in a 
producerMethod or field. @Dependent scoped beans do not have any proxy to 
switch the TCCL around. I'm also strictly -1 for all this stuff in performance 
hindsight. It will e.g. not be possible anymore to do some Bean and instance 
caching in our resolvers and proxies. So we will be 5x slower in this modus...


At the end of the day we will need to implement a mode which is spec compatible 
at least. But noone says that this must be the preferred modus for OWB!


I'll keep you updated about the final decision.

LieGrue,
strub

Reply via email to