Romain, We just could remove the check for ThirdPartyBean and are fine. WDYT?
Cheers, Arne Von: Romain Manni-Bucau <[email protected]<mailto:[email protected]>> Datum: Samstag, 22. November 2014 12:03 An: Arne Limburg <[email protected]<mailto:[email protected]>> Betreff: Re: [cdi-dev] Getting injection point from Bean#create Im dont like this lookup. In all other case you have the injection available. If we want it everywhere we just move the threadlocal outside the context which is not what we want i think Le 22 nov. 2014 11:58, "Arne Limburg" <[email protected]<mailto:[email protected]>> a écrit : Damn, should have made an svn up, before I started ;-) I reviewed your fix and I am not happy with it. Lookup of the InjectionPoint should be possible from everywhere, where it is available (i.e. In a Constructor of a @Dependent bean) and not only from ThirdPartyBean#create So, I propose that we never throw the exception but assume that it is a lookup in that case. Other opinions? Cheers, Arne Von: Romain Manni-Bucau <[email protected]<mailto:[email protected]>> Datum: Samstag, 22. November 2014 11:40 An: Arne Limburg <[email protected]<mailto:[email protected]>> Betreff: Re: [cdi-dev] Getting injection point from Bean#create Test is passing ;). Test should be sthg like GetInjectionPoint*Test Le 22 nov. 2014 11:30, "Arne Limburg" <[email protected]<mailto:[email protected]>> a écrit : Oh, ok, what’s its name? Are you already working on a fix? Von: Romain Manni-Bucau <[email protected]<mailto:[email protected]>> Datum: Samstag, 22. November 2014 11:27 An: Arne Limburg <[email protected]<mailto:[email protected]>> Betreff: Fwd: Re: [cdi-dev] Getting injection point from Bean#create Hi Arne I added a test yesterday for it ---------- Message transféré ---------- De : "Arne Limburg" <[email protected]<mailto:[email protected]>> Date : 22 nov. 2014 11:24 Objet : Re: [cdi-dev] Getting injection point from Bean#create À : "arjan tijms" <[email protected]<mailto:[email protected]>> Cc : "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>> Hi Arjan, I¹ve verified, that this is a bug in OpenWebBeans. I've created https://issues.apache.org/jira/browse/OWB-1030 and I¹m going to fix it. Btw.: You have to use the CreationalContext of the bean (the way OWB currently throws the "Inconsistent injection point stack" exception) Cheers, Arne Am 21.11.14 12:58 schrieb "arjan tijms" unter <[email protected]<mailto:[email protected]>>: >Hi, > >On Fri, Nov 21, 2014 at 10:31 AM, Jozef Hartinger ><[email protected]<mailto:[email protected]>> >wrote: >> Here is my understanding of Arjan's >> setup: >> [...] >> >> This is no different from a producer method injecting InjectionPoint >> directly. > >That's indeed the exact setup. > >On Fri, Nov 21, 2014 at 11:34 AM, Romain Manni-Bucau ><[email protected]<mailto:[email protected]>> wrote: >> PS: BTW should work on OWB 1.5.0-SNAPSHOT now > >Wow, I'll look at the latest SNAPSHOT of OWB then. Thanks Romain! > >Kind regards, >Arjan > > > > >> >> >> On 11/21/2014 10:23 AM, Romain Manni-Bucau wrote: >>> >>> yes but what would mean any of the values? Not bound to any injection >>> it doesn't mean anything >>> >>> >>> Romain Manni-Bucau >>> @rmannibucau >>> http://www.tomitribe.com >>> http://rmannibucau.wordpress.com >>> https://github.com/rmannibucau >>> >>> >>> 2014-11-21 10:19 GMT+01:00 Jozef Hartinger >>> <[email protected]<mailto:[email protected]>>: >>>> >>>> It means "give me an instance of type InjectionPoint and @Default >>>> qualifier". In default setup this should be served by the built-in >>>> Bean<InjectionPoint>". >>>> >>>> >>>> On 11/21/2014 10:12 AM, Romain Manni-Bucau wrote: >>>>> >>>>> @Jozef: InjectionPoint ip = getBean(InjectionPoint.class); doesn't >>>>> mean anything in the absolute. So why should it be allowed? >>>>> >>>>> >>>>> Romain Manni-Bucau >>>>> @rmannibucau >>>>> http://www.tomitribe.com >>>>> http://rmannibucau.wordpress.com >>>>> https://github.com/rmannibucau >>>>> >>>>> >>>>> 2014-11-21 9:57 GMT+01:00 Jozef Hartinger >>>>> <[email protected]<mailto:[email protected]>>: >>>>>> >>>>>> The workaround is very ugly. Instead of going that path OWB should >>>>>>be >>>>>> fixed >>>>>> to support the simple way. >>>>>> >>>>>> >>>>>> On 11/20/2014 11:22 PM, arjan tijms wrote: >>>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> On Thu, Nov 20, 2014 at 11:07 PM, Romain Manni-Bucau >>>>>>> <[email protected]<mailto:[email protected]>> wrote: >>>>>>>> >>>>>>>> Not sure what it means actually. InjectionPoint is highly >>>>>>>>contextual >>>>>>>> so >>>>>>>> having an exception (not a npe of course) would make sense to me. >>>>>>>> >>>>>>>> Bean#create is a "you know what you do" from my understanding >>>>>>>>since >>>>>>>> interceptors/decorators are not supported for instance so it >>>>>>>>shouldnt >>>>>>>> rely >>>>>>>> of things like that, no? >>>>>>> >>>>>>> Sure, no interceptor/decorators, but the injection point -is- >>>>>>>there of >>>>>>> course. I can see it being set in OWB as a special property on the >>>>>>> creational context if I walk down the stack trace in a debugger >>>>>>>when >>>>>>> my Bean#create method is being called. An injection point is >>>>>>>something >>>>>>> that implementations of Bean could always need, for instance to >>>>>>> retrieve the name of the field into which injection is taking >>>>>>>place. >>>>>>> >>>>>>> Of course, it being a "you know what you do", it's okay that it's >>>>>>>not >>>>>>> as simple as having it injected into the Bean, and that some extra >>>>>>> code is needed to obtain it. As long as there is at least -a- way >>>>>>>to >>>>>>> get hold of it. >>>>>>> >>>>>>> The method I posted in the openings post does in fact work, but it >>>>>>> feels slightly hacky. If that's an acceptable way to get the >>>>>>>injection >>>>>>> point, then so be it. But just wondering if it's not something that >>>>>>> works by chance and may break later. >>>>>>> >>>>>>> Kind regards, >>>>>>> Arjan >>>>>>> _______________________________________________ >>>>>>> cdi-dev mailing list >>>>>>> [email protected]<mailto:[email protected]> >>>>>>> https://lists.jboss.org/mailman/listinfo/cdi-dev >>>>>>> >>>>>>> Note that for all code provided on this list, the provider licenses >>>>>>> the >>>>>>> code under the Apache License, Version 2 >>>>>>> (http://www.apache.org/licenses/LICENSE-2.0.html). For all other >>>>>>>ideas >>>>>>> provided on this list, the provider waives all patent and other >>>>>>> intellectual >>>>>>> property rights inherent in such information. >>>>>> >>>>>> >> >_______________________________________________ >cdi-dev mailing list >[email protected]<mailto:[email protected]> >https://lists.jboss.org/mailman/listinfo/cdi-dev > >Note that for all code provided on this list, the provider licenses the >code under the Apache License, Version 2 >(http://www.apache.org/licenses/LICENSE-2.0.html). For all other ideas >provided on this list, the provider waives all patent and other >intellectual property rights inherent in such information. _______________________________________________ cdi-dev mailing list [email protected]<mailto:[email protected]> https://lists.jboss.org/mailman/listinfo/cdi-dev Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (http://www.apache.org/licenses/LICENSE-2.0.html). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.
