[weld-dev] Is @Specializes transitive?

Dan Allen dan.j.allen at gmail.com
Fri Dec 3 01:56:46 EST 2010


The answer is yes. I think 4.3.1 explains this rather clearly:

Formally, a bean X is said to specialize another bean Y if either:

   - X directly specializes Y, or
   - a bean Z exists, such that X directly specializes Z and Z specializes
   Y.

There isn't a crystal clear example of #2 in this section (it's implied by
references to types in previous examples).

In your case X = Jsf2CodiConfig, Z = Jsf1CodiConfig and Y = CodiConfig

X wins.

-Dan

On Thu, Nov 25, 2010 at 5:51 PM, Mark Struberg <struberg at yahoo.de> wrote:

> Hi folks!
>
> I have the following situation and couldn't find a _clear_ answer to my
> question (various hints, but as I said: not really clear):
>
>
> class CodiConfig
>
> @Specializes
> class Jsf1CodiConfig extends CodiConfig
>
> @Specializes
> class Jsf2CodiConfig extends Jsf1CodiConfig
>
>
> If I
> @Inject CodiConfig cc;
>
> is it well defined in the spec that I must get Jsf2CodiConfig?
>
> Imo it should be, but before I 'fix' this in OWB, I need an ok that this
> transitive behaviour is conform with the spec. And of course that Weld is
> behaving in the same way ;)
>
> txs and LieGrue,
> strub
>
>
>
>
> _______________________________________________
> weld-dev mailing list
> weld-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/weld-dev
>



-- 
Dan Allen
Principal Software Engineer, Red Hat | Author of Seam in Action
Registered Linux User #231597

http://mojavelinux.com
http://mojavelinux.com/seaminaction
http://www.google.com/profiles/dan.j.allen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/weld-dev/attachments/20101203/0988deef/attachment.html 


More information about the weld-dev mailing list