[cdi-dev] [JBoss JIRA] Commented: (CDI-117) Add BeanManager to a ServletContext attribute

Rick Hightower richardhightower at gmail.com
Mon Apr 25 15:23:26 EDT 2011


Andy Gibson, Rob Williams and I, implemented something like this for
CDISource.
It works with Weld, OpenWebBeans and Candi.

We have a BeanContainerManager that uses java.util.ServiceLoader.

see

https://github.com/CDISource/cdisource/blob/master/beancontainer/api/src/main/java/org/cdisource/beancontainer/BeanContainerManager.java

I think in addition to the ability to easily load a BeanManager, we need a
simplified interface for dealing with beans. BeanManager is a bit at the SPI
level. It needs a Facade to make it easier to use.

Compare the BeanManager to the Spring's Application Context. I think the
BeanManager should be more like the Spring Application Context.

for some ideas see:

https://github.com/CDISource/cdisource/blob/master/beancontainer/api/src/main/java/org/cdisource/beancontainer/BeanContainer.java

The Spring integration piece that I wrote tries to find the BeanManager in
JNDI and then uses the Service Locator if it does not find it in JNDI.

I think it would be nice if there was a BeanManagerFactory that looks up
first using JNDI, then uses a Service Locator if it can't find it in JNDI.

Ok it is not the exact behavior, but I know what you are taking about:

https://github.com/CDISource/cdisource/blob/master/spring/src/main/java/org/cdisource/springintegration/BeanManagerLocationUtil.java




On Mon, Apr 25, 2011 at 12:38 AM, Pete Muir (JIRA) <
jira-events at lists.jboss.org> wrote:

>
>    [
> https://issues.jboss.org/browse/CDI-117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12597724#comment-12597724]
>
> Pete Muir commented on CDI-117:
> -------------------------------
>
> Cloves please file an issue for your approach.
>
> > Add BeanManager to a ServletContext attribute
> > ---------------------------------------------
> >
> >                 Key: CDI-117
> >                 URL: https://issues.jboss.org/browse/CDI-117
> >             Project: CDI Specification Issues
> >          Issue Type: Feature Request
> >          Components: Java EE integration
> >    Affects Versions: 1.0
> >            Reporter: Christian Kaltepoth
> >            Priority: Minor
> >
> > CDI 1.0 defines a JNDI lookup as the standard way to obtain the
> BeanManager for resources not managed by the CDI environment. However in a
> servlet environment it would be much easier to get the BeanManager from a
> standardized servlet context attribute. This would be also a major
> simplification in environments that don't support JNDI (for example GAE) or
> that don't allow to use the standard JNDI name for the BeanManager (for
> example Apache Tomcat).
> > This topic was already discussed on weld-dev about a year ago [1]. Weld
> 1.0 already supports this [2] and OpenWebBeans also added this feature [3].
> Unfortunately Weld 1.1 changed the attribute to a Weld-specific name in [4]
> which currently leads to much confusion [5].
> > As both of the major CDI implementations support this feature I think it
> should finally be put into the spec.
> > [1] http://lists.jboss.org/pipermail/weld-dev/2010-March/002359.html
> > [2] https://issues.jboss.org/browse/WELD-202
> > [3] https://issues.apache.org/jira/browse/OWB-360
> > [4] https://jira.jboss.org/browse/WELD-679
> > [5]
> http://seamframework.org/Community/GettingBeanManagerFromServletContextWithWeld11
>
> --
> This message is automatically generated by JIRA.
> For more information on JIRA, see: http://www.atlassian.com/software/jira
> _______________________________________________
> cdi-dev mailing list
> cdi-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/cdi-dev
>



-- 
*Rick Hightower*
(415) 968-9037
Profile <http://www.google.com/profiles/RichardHightower>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/cdi-dev/attachments/20110425/cc98d560/attachment-0001.html 


More information about the cdi-dev mailing list