Mark Struberg commented on CDI-129:
I checked the spec again, and the terminus technicus 'application' is used for all
kinds of 'applcations'.
A few examples:
An application that takes advantage of these services may be designed
to execute in either the
Java EE environment or the Java SE environment.
during the service() method of any servlet in the web application
The application context is destroyed when the application is shut
There is a well defined webapp shutdown but nothing like that in the whole EE
spec for EARs! Each EE Server has an own internal API for such things afaik.
The application context is shared between all servlet requests, web
service invocations, EJB remote
method invocations, EJB asynchronous method invocations, EJB timeouts and message
message-driven beans that *execute within the same application*.
The important part here is *execute within the same application*
This part would not be needed if this would work across all the EAR anyway, isn't?
This is a pretty hairy area and I see that it's not so 100% clear. We should think
really hard about how this is going to be used in real world projects.
introduce @EnterpriseScoped (or similar)
Project: CDI Specification Issues
Issue Type: Feature Request
Affects Versions: 1.0
Reporter: Mark Struberg
Fix For: 1.1 (Proposed)
Since @ApplicationScoped currently is defined in 6.5.2 as to be 'like in the Servlet
specification' this means that you will get a new instance for every WebApplication
There is currently no specified CDI scope for providing a single shared instance for a
We could (ab-)use @Singleton for that, but this is currently not well defined at all.
Alternatively we could introduce an own new annotation like @EnterpriseScoped or likes.
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira