[cdi-dev] [jsr342-experts] CDI in Application Client Container
Antoine Sabot-Durand
antoine.sabotdurand at gmail.com
Wed Nov 14 09:44:10 EST 2012
I'll ask him tonight. But I think he came across this issue when
writing demo code for the new edition of his java EE book :-)
Antoine Sabot-Durand
Le 14 nov. 2012 à 15:35, Pete Muir <pmuir at redhat.com> a écrit :
> Apart from Antonio, are there any users of CDI wanting this feature?
>
> On 13 Nov 2012, at 21:07, Sabot-Durand Antoine wrote:
>
>> Pete,
>>
>> There are two aspects in this problem.
>> 1) The spec level. Right now as you stated it's too late to work on this integration and will probably have negative impact on CDI and Java EE roadmap
>>
>> 2) The concrete fact that CDI cannot be used in ACC. Perhaps we could propose a temporary solution at the implementation level. CDI has 2 implementation and both provides proprietary Java SE support. Perhaps it's possible to provide guidelines to integrate Weld or OWB thru their specific SE bootstrap system in ACC implementation. It won't be at the specification level so it'll have no impact on CDI spec but we'll provide an effective solution to boot Weld or OWB in a given ACC until next EE version. I guess EE EG won't be bvery happy with it but It's better than nothing.
>>
>> I see Antonio tomorrow at Devoxx and can talk to him about this.
>>
>> My 2 cents
>>
>> Antoine
>>
>> Le 13 nov. 2012 à 17:49, Pete Muir <pmuir at bleepbleep.org.uk> a écrit :
>>
>>> No, they can't impose stuff on CDI, but then can ask nicely, and we should try to help them like the nice friendly people we are, remembering we have lots of stuff we want them to change ;-)
>>>
>>> On 13 Nov 2012, at 13:04, Mark Struberg wrote:
>>>
>>>> A 2-edged sword.
>>>> Of course this is clearly a bug in the EE-6 spec and not in CDI.
>>>> Otoh I don't like to have the EE umbrella spec impose rules on a CDI container. They really are not allowed to impose such rules on CDI in the first place, isn't?
>>>>
>>>> LieGrue,
>>>> strub
>>>>
>>>>
>>>>
>>>>
>>>> ----- Original Message -----
>>>>> From: Pete Muir <pmuir at bleepbleep.org.uk>
>>>>> To: cdi-dev at lists.jboss.org
>>>>> Cc:
>>>>> Sent: Tuesday, November 13, 2012 10:45 AM
>>>>> Subject: [cdi-dev] Fwd: [jsr342-experts] CDI in Application Client Container
>>>>>
>>>>> All,
>>>>>
>>>>> It's come to light that whilst the CDI spec explicitly does not require
>>>>> support for the Java EE client container, the Java EE spec does require support
>>>>> for it. There are no TCK tests for this.
>>>>>
>>>>> The Java EE spec leads would like to rectify this by changing the CDI spec to
>>>>> require support for it, however, I would prefer to alter the Java EE spec and
>>>>> recognise this as a bug in the Java EE spec. IMO this relates very closely to
>>>>> Java SE support, which I we want to address in CDI 2, not in 1.1.
>>>>>
>>>>> Thoughts?
>>>>>
>>>>> Begin forwarded message:
>>>>>
>>>>>> From: Jason Greene <jason.greene at redhat.com>
>>>>>> Subject: [jsr342-experts] Re: CDI in Application Client Container
>>>>>> Date: 12 November 2012 23:58:17 GMT
>>>>>> To: jsr342-experts at javaee-spec.java.net
>>>>>>
>>>>>> We purposefully did not include support for the app client container in the
>>>>> CDI spec, mainly because it has low usage, there are numerous differences in
>>>>> container implementations, SE support was politically unpopular at the time, and
>>>>> we were waiting to see what happened with modularity.
>>>>>>
>>>>>> On Nov 11, 2012, at 2:07 PM, Bill Shannon <bill.shannon at oracle.com>
>>>>> wrote:
>>>>>>
>>>>>>> Sigh...
>>>>>>>
>>>>>>> It appears that we neither implemented nor tested support for CDI in
>>>>> the app client container. Clearly something we'll need to fix for EE 7, if
>>>>> not sooner.
>>>>>>>
>>>>>>> Bill Shannon wrote on 11/09/2012 04:47 PM:
>>>>>>>> Yes, based on the Java EE 6 platform spec, I intended and expected
>>>>> CDI to work in the app client container.
>>>>>>>>
>>>>>>>> I'm trying to find out what we actually implemented and
>>>>> tested... :-)
>>>>>>>>
>>>>>>>> Antonio Goncalves wrote on 11/09/12 14:10:
>>>>>>>>> Ok, good to know. But that means that all ACC implementations
>>>>> should support it then ? As Pete said, looks like the JBoss one doesn't....
>>>>>>>>>
>>>>>>>>> I found the mail I sent to the GlassFish forum a couple of
>>>>> years ago about this topic
>>>>> (http://www.java.net/forum/topic/glassfish/glassfish/using-cdi-acc-se-environment).
>>>>> I'll be doing more test to make sure and fill a bug if needed.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Nov 9, 2012 at 10:57 PM, Bill Shannon
>>>>> <bill.shannon at oracle.com> wrote:
>>>>>>>>> CDI is supposed to be supported in the app client container.
>>>>> If it's not working, please file bugs.
>>>>>>>>>
>>>>>>>>> Antonio Goncalves wrote on 11/09/12 06:09:
>>>>>>>>>> Hum.... for me it's just another container (EJB,
>>>>> Servlet & Client) so I would expect the same services from CDI. ACC is not
>>>>> plain Java SE, it's a container that gives you a small set of services, and
>>>>> that includes CDI (as per Java EE specification).
>>>>>>>>>>
>>>>>>>>>> Bill/Linda, if CDI is not supported in ACC why not getting
>>>>> rid of it in Figure EE.2-1 ? It's confusing.
>>>>>>>>>>
>>>>>>>>>> Antonio
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Fri, Nov 9, 2012 at 3:01 PM, Pete Muir
>>>>> <pmuir at bleepbleep.org.uk> wrote:
>>>>>>>>>> This also ties in to more general Java SE support for CDI
>>>>> IMO. I would probably prefer to get a general solution sorted, rather than a
>>>>> special case for ACC.
>>>>>>>>>>
>>>>>>>>>> On 9 Nov 2012, at 14:56, Antonio Goncalves wrote:
>>>>>>>>>>
>>>>>>>>>>> I like to use Producers and Alternatives so I can
>>>>> easily switch context. In the case of having CDI in ACC that would allow me to
>>>>> invoke different Web Serivces just by changing beans.xml
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Nov 9, 2012 at 2:44 PM, Pete Muir
>>>>> <pmuir at bleepbleep.org.uk> wrote:
>>>>>>>>>>> It's not in the cdi tck so I doubt it is in jboss
>>>>> as.
>>>>>>>>>>>
>>>>>>>>>>> Nigel's point about scopes is very relevant.
>>>>>>>>>>> On 9 Nov 2012 14:03, "Antonio Goncalves"
>>>>> <antonio.goncalves at gmail.com> wrote:
>>>>>>>>>>> I'm not an ACC expert, but I do use it once in a
>>>>> while. But to be honest, I don't know why it doesn't work. If you look
>>>>> at the EE spec (eg. EE 7 - Figure EE.2-1) you see that CDI & DI is in the
>>>>> ACC. But on the other hand, the CDI 1.0 spec (12.1. Bean archives) says
>>>>> "The container is not required to support application client jar bean
>>>>> archives." I tried several time with the appclient from GlassFish, and CDI
>>>>> just doesn't work (wonder if JBoss ACC allows CDI or not). The "is not
>>>>> required" part is frustrating.
>>>>>>>>>>>
>>>>>>>>>>> Antonio
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Nov 9, 2012 at 12:48 PM, Pete Muir
>>>>> <pmuir at bleepbleep.org.uk> wrote:
>>>>>>>>>>> I'm not an expert in the ACC, so would need a ACC
>>>>> expert who knows CDI to help us define the behavior. Interested Antonio?
>>>>>>>>>>>
>>>>>>>>>>> On 9 Nov 2012, at 12:41, Antonio Goncalves wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi all,
>>>>>>>>>>>>
>>>>>>>>>>>> Correct me if I'm wrong but I haven't seen
>>>>> any discussion on this topic. In Java EE 6 CDI doesn't work in ACC.
>>>>> Wouldn't it be useful to add it in EE 7 ?
>>>>>>>>>>>>
>>>>>>>>>>>> A use case I'm working on at the moment is that
>>>>> I have a Java SE class (running in ACC) that injects a web service reference
>>>>> with @WebServiceRef. With CDI enabled I could produce this reference and just
>>>>> @Inject it.
>>>>>>>>>>>>
>>>>>>>>>>>> What do you think ?
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Antonio Goncalves
>>>>>>>>>>>> Software architect and Java Champion
>>>>>>>>>>>>
>>>>>>>>>>>> Web site | Twitter | LinkedIn | Paris JUG | Devoxx
>>>>> France
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Antonio Goncalves
>>>>>>>>>>> Software architect and Java Champion
>>>>>>>>>>>
>>>>>>>>>>> Web site | Twitter | LinkedIn | Paris JUG | Devoxx
>>>>> France
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Antonio Goncalves
>>>>>>>>>>> Software architect and Java Champion
>>>>>>>>>>>
>>>>>>>>>>> Web site | Twitter | LinkedIn | Paris JUG | Devoxx
>>>>> France
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Antonio Goncalves
>>>>>>>>>> Software architect and Java Champion
>>>>>>>>>>
>>>>>>>>>> Web site | Twitter | LinkedIn | Paris JUG | Devoxx France
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Antonio Goncalves
>>>>>>>>> Software architect and Java Champion
>>>>>>>>>
>>>>>>>>> Web site | Twitter | LinkedIn | Paris JUG | Devoxx France
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> cdi-dev mailing list
>>>>> cdi-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/cdi-dev
>>>
>>>
>>> _______________________________________________
>>> cdi-dev mailing list
>>> cdi-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/cdi-dev
>>
>>
>> _______________________________________________
>> cdi-dev mailing list
>> cdi-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/cdi-dev
>
More information about the cdi-dev
mailing list