[cdi-dev] Question for clarification and my understanding
Mark Struberg
struberg at yahoo.de
Thu Oct 20 02:19:50 EDT 2011
They must have at least 1 non-private ct (this includes the default ct). And if it does have a parameter, then it must be annotated with @Inject.
This is perfectly enough to create a proxy. Of course this @Inject constructor must not get called while creating the proxy itself (because this might contain certain checks and logic). In this very case a default-ct must get added to the proxy-subclass via byte code enhancement techniques.
Also please note that not the CDI specification defines any interceptor behaviour but the Interceptors-1.1 specification (or any update which gets defined by the EJB-3.2 Expert Group). So any assumption we made in CDI must be synced with their work.
And actually, all beans of passivating scopes must provide a default-ct because of Serialization reasons anyway, isn't?
LieGrue,
strub
----- Original Message -----
> From: Stuart Douglas <stuart.w.douglas at gmail.com>
> To: Mark Struberg <struberg at yahoo.de>
> Cc: Jozef Hartinger <jharting at redhat.com>; cdi-dev <cdi-dev at lists.jboss.org>
> Sent: Thursday, October 20, 2011 6:54 AM
> Subject: Re: [cdi-dev] Question for clarification and my understanding
>
> I thought that interceptors had to be done via subclassing as well, as the spec
> does not specify that intercepted beans have to have a default constructor?
>
> Stuart
>
>
> On 20/10/2011, at 3:44 PM, Mark Struberg wrote:
>
>> The spec says that only Decorators need to be done via subclassing.
>>
>> LieGrue,
>> strub
>>
>>
>>
>> ----- Original Message -----
>>> From: Jozef Hartinger <jharting at redhat.com>
>>> To: Rick Hightower <richardhightower at gmail.com>
>>> Cc: cdi-dev <cdi-dev at lists.jboss.org>
>>> Sent: Wednesday, October 19, 2011 7:33 PM
>>> Subject: Re: [cdi-dev] Question for clarification and my understanding
>>>
>>> Only normal scoped beans require client proxies. Decoration and
>>> interception should be implemented by subclassing (see CDI-74, CDI-44).
>>>
>>> On 10/19/2011 07:24 PM, Rick Hightower wrote:
>>>>
>>>> Section 5.4
>>>>
>>>> "Client proxies are never required for a bean whose scope is a
>
>>>> pseudo-scope such as @Dependent."
>>>>
>>>>
>>>> I understand the concept of client proxies to allow for scopes and
>>>> context.
>>>>
>>>>
>>>> Is this a true statement...
>>>>
>>>> Client proxies may not be needed for @Dependent (pseudo scope). CDI
>
>>>> may provide a client proxy for @Dependent.
>>>> A proxy is needed for @Dependent objects that are decorated or
>>>> intercepted with Decorators or Interceptors.
>>>>
>>>> Are all injected objects proxied or only objects that are normal
>>>> scoped or decorated?
>>>>
>>>>
>>>>
>>>> --
>>>> *Rick Hightower*
>>>> (415) 968-9037
>>>> Profile <http://www.google.com/profiles/RichardHightower>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> 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