Sorry, should have been "DefaultListener"
John
________________________________
From: Tomas Remes <tremes(a)redhat.com>
Sent: Monday, July 24, 2017 7:59 AM
To: John Ament
Cc: Matej Novotny; cdi-dev
Subject: Re: [cdi-dev] ProcessAnnotatedType & Bean Discovery mode
DefaultServlet appears to have @Dependent annotation.
https://github.com/hammock-project/hammock/blob/hammock-1.5/web-tck/src/m...
T.
----- Original Message -----
From: "John Ament" <john.ament(a)spartasystems.com>
To: "Matej Novotny" <manovotn(a)redhat.com>
Cc: "cdi-dev" <cdi-dev(a)lists.jboss.org>
Sent: Monday, July 24, 2017 1:35:16 PM
Subject: Re: [cdi-dev] ProcessAnnotatedType & Bean Discovery mode
The issue has to do with ProcessAnnotatedType firing in a bean archive of discovery mode
"annotated." I think we all agree that if the discovery mode is all with a trim
flag, it works correctly.
It appears that if you have an Arquillian test in Weld, where a class has no bean defining
annotations, it still has a PAT fired. If you look at
https://github.com/hammock-project/hammock/blob/hammock-1.5/web-tck/src/m...
you'll see it includes a DefaultServlet class, which has no bean defining annotations.
In Weld, this generates a PAT, but in OWB it does not.
John
From: Matej Novotny <manovotn(a)redhat.com>
Sent: Monday, July 24, 2017 6:38 AM
To: John Ament
Cc: Antoine Sabot-Durand; Martin Kouba; cdi-dev
Subject: Re: [cdi-dev] ProcessAnnotatedType & Bean Discovery mode
What case exactly do you think Weld does incorrectly?
If you have beans.xml `all` with `<trimm/>`, you should be firing PAT for all.
That's what me and Martin said.
Matej
----- Original Message -----
From: "John Ament" <john.ament(a)spartasystems.com>
To: "Antoine Sabot-Durand" <asd(a)redhat.com>, "Martin Kouba"
<mkouba(a)redhat.com>
Cc: "cdi-dev" <cdi-dev(a)lists.jboss.org>
Sent: Monday, July 24, 2017 12:09:16 PM
Subject: Re: [cdi-dev] ProcessAnnotatedType & Bean Discovery mode
Then that means Weld is doing it wrong (firing PAT for all classes).
John
From: Antoine Sabot-Durand <asd(a)redhat.com>
Sent: Monday, July 24, 2017 4:31 AM
To: Martin Kouba
Cc: John Ament; cdi-dev
Subject: Re: [cdi-dev] ProcessAnnotatedType & Bean Discovery mode
Yes it’s the correct interpretation.
Confusion may come from the fact that we first considered to specify this
feature the other way around (discover all types on implicites bean archive
but only keep classes with BDA for bean discovery). We switched to this
approach because we thought it was better for backward compatibility.
Antoine
> Le 24 juil. 2017 à 08:27, Martin Kouba <mkouba(a)redhat.com> a écrit :
>
> Hi John,
>
> I think OWB interpretation is correct.
>
> In an implicit bean archive (implicit = bean archive with
> bean-discovery-mode=annotated) PAT is only fired for discovered types
> and the container only discovers each class with a bean defining
> annotation.
>
> For trimmed bean archive - only explicit bean archives may be marked as
> 'trimmed'. PAT is fired there but if it does not have a bean defining
> annotation it's removed from the set of discovered types, i.e. no bean
> is created.
>
> Martin
>
> Dne 23.7.2017 v 14:32 John Ament napsal(a):
>> Hi,
>>
>>
>> An issue popped up in OWB wanted to get the EG's perspective on this.
>>
>>
>> I have a given bean archive, with a class in it (no bean defining
>> annotations). My interpretation of [1] and [2] is that this class is
>> fired as a ProcessAnnotatedType, regardless of what is in beans.xml. In
>> OWB, if I do bean-discovery-mode=annotated it does not get fired, but if
>> it is all, even with a <trim/> a PAT gets fired. However it seems that
>> it should get fired before anything is even considered about the class,
>> and whether it has annotations.
>>
>>
>> [1]:
>>
https://docs.jboss.org/cdi/spec/1.2/cdi-spec.html#process_annotated_type
Contexts and Dependency Injection for the Java EE platform
docs.jboss.org
A well-defined lifecycle for stateful objects bound to lifecycle contexts,
where the set of contexts is extensible. A sophisticated, typesafe
dependency injection ...
>>
>> [2]:
>>
https://docs.jboss.org/cdi/spec/2.0/cdi-spec.html#process_annotated_type
>>
>>
>> John
>>
>>
>> ------------------------------------------------------------------------
>> NOTICE: This e-mail message and any attachments may contain
>> confidential, proprietary, and/or privileged information which should be
>> treated accordingly. If you are not the intended recipient, please
>> notify the sender immediately by return e-mail, delete this message, and
>> destroy all physical and electronic copies. Thank you.
>>
>>
>> _______________________________________________
>> cdi-dev mailing list
>> cdi-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/cdi-dev
cdi-dev Info Page -
lists.jboss.org Mailing Lists
lists.jboss.org
List to discuss the development of CDI (the specification) To see the
collection of prior postings to the list, visit the cdi-dev Archives.
>>
>> 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.
>>
>
> --
> Martin Kouba
> Senior Software Engineer
> Red Hat, Czech Republic
> _______________________________________________
> 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.
NOTICE: This e-mail message and any attachments may contain confidential,
proprietary, and/or privileged information which should be treated
accordingly. If you are not the intended recipient, please notify the sender
immediately by return e-mail, delete this message, and destroy all physical
and electronic copies. Thank you.
_______________________________________________
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.
NOTICE: This e-mail message and any attachments may contain confidential, proprietary,
and/or privileged information which should be treated accordingly. If you are not the
intended recipient, please notify the sender immediately by return e-mail, delete this
message, and destroy all physical and electronic copies. Thank you.
_______________________________________________
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.
--
Tomas Remes
________________________________
NOTICE: This e-mail message and any attachments may contain confidential, proprietary,
and/or privileged information which should be treated accordingly. If you are not the
intended recipient, please notify the sender immediately by return e-mail, delete this
message, and destroy all physical and electronic copies. Thank you.