@Jozef: InjectionPoint ip = getBean(InjectionPoint.class); doesn't
mean anything in the absolute. So why should it be allowed?
Romain Manni-Bucau
@rmannibucau
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
> <rmannibucau(a)gmail.com> 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
> cdi-dev(a)lists.jboss.org
>
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.