jsr372-experts@javaserverfaces-spec-public.java.net

[jsr372-experts] [1315-ELResolvingByCDI] opt-in: PROVISIONALLY CLOSED (was: Re: Simplify EL resolver chain by using CDI)

From: Edward Burns <edward.burns_at_oracle.com>
Date: Wed, 22 Oct 2014 13:05:17 -0700

>>>>> On Thu, 9 Oct 2014 10:59:23 -0500, Josh Juneau <juneau001_at_gmail.com> said:

JJ> Hi Everyone,
JJ> If following the other specifications, the @Resource is used to specify a
JJ> resource on the server. As is the case with the Java EE Concurrency
JJ> utilities and others. Therefore, I agree that if @Resource were to be
JJ> utilized by JSF then it may muddy the waters and become confusing.

JJ> What about applying the @Vetoed annotation to resources to differentiate
JJ> which should be using JSF vs CDI? I understand (and agree) that JSF 2.3
JJ> and beyond should be taking advantage of CDI. However, there still may be
JJ> the case where one wishes to make use of the JSF runtime rather than CDI in
JJ> certain beans (perhaps for compatibility). Applying @Vetoed will allow CDI
JJ> to ignore the bean completely. Personally, I am already using CDI in most
JJ> of my solutions, but this would allow for more flexibility to those who are
JJ> not.

Unless there is a plurality of support for @Vetoed or some other more
complicated opt-in, I would like to close this debate by stating that
the WEB-INF/web.xml and WEB-INF/faces-config.xml (with the possible
inclusion of ApplicationConfigurationPopulator) are the only places to
indicate the CDI opt-in.

Yes I realize this is equivalent to telling people that they cannot use
new features in JSF 2.3 unless they agree to use CDI.

Ed

-- 
| edward.burns_at_oracle.com | office: +1 407 458 0017
| 12 work days til Devoxx 2014