JSF [1] and Omnifaces [2] are doing it but it's against the spec.
If this was allowed, I suppose BeanManager.getContext() [3] would have taken an annotation
parameter instead of an annotation type.
Xavier
----
[1]
http://docs.oracle.com/javaee/7/api/javax/faces/flow/FlowScoped.html
[2]
http://omnifaces.org/docs/javadoc/2.6/org/omnifaces/cdi/ViewScoped.html
[3]
http://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/BeanManag...
From: cdi-dev-bounces(a)lists.jboss.org <cdi-dev-bounces(a)lists.jboss.org> on behalf of
Matej Novotny <manovotn(a)redhat.com>
Sent: Friday, September 1, 2017 1:43 PM
To: Todor Boev
Cc: cdi-dev
Subject: Re: [cdi-dev] Attributes on scope annotations
Let's keep this conversation on CDI-dev list, please (adding back to CC).
Hmm, I think it is not forbidden to add another plain java annotation.
However, having it working as scope and cdi qualifier in the same time won't work.
Matej
----- Original Message -----
From: "Todor Boev" <rinsvind(a)gmail.com>
To: "Matej Novotny" <manovotn(a)redhat.com>
Sent: Friday, September 1, 2017 12:33:54 PM
Subject: Re: [cdi-dev] Attributes on scope annotations
Thank you for the timely replay,
I need portable behavior, so the other option I am considering is to
meta-annotate the scope annotation with the additional information I need.
The issues are now: is this allowed, can in principle my custom
meta-annotation be a qualifier. Probably a plain annotation will be
sufficient, but I may need to have it do double-duty as a qualifier as well.
Thanks in advance,
Todor
On Fri, Sep 1, 2017 at 11:49 AM, Matej Novotny <manovotn(a)redhat.com> wrote:
> Hello Todor,
>
> From CDI specification 2.0 section 2.4.2 Defining new scopes[1]:
>
> "A scope type must not have any attributes. If a scope type has attributes
> non-portable behavior results."
>
> Matej
>
> ____________________________________________________________
> _______________-
> [1]
http://docs.jboss.org/cdi/spec/2.0/cdi-spec.html#
JSR 365: Contexts and Dependency Injection for Java 2.0
docs.jboss.org
Starting with version 2.0 CDI targets Java SE and Java EE platforms. CDI in Java SE and
CDI in a Java EE container share the features defined in core CDI.
> defining_new_scope_type
>
>
>
> ----- Original Message -----
> > From: "Todor Boev" <rinsvind(a)gmail.com>
> > To: cdi-dev(a)lists.jboss.org
> > Sent: Friday, September 1, 2017 9:51:47 AM
> > Subject: [cdi-dev] Attributes on scope annotations
> >
> > Hello,
> >
> > Is it against the CDI 2.0 specification to have attributes on a scope
> > annotation? If not is this a corner case that may become forbidden or
> simply
> > not be taken into account in future versions of the specification?
> >
> > E.g. @ComponentScoped("my-component")
> >
> > With Weld 3.0.0 I was able to successfully use such annotations.
> >
> > Regards,
> > Todor
> >
> >
> > _______________________________________________
> > 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
Apache License, Version 2.0
www.apache.org
Apache License Version 2.0, January 2004
http://www.apache.org/licenses/ TERMS AND
CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION. 1. Definitions.
> > provided on this list, the provider waives all patent and
other
> intellectual
> > property rights inherent in such information.
>
_______________________________________________
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.