[cdi-dev] [JBoss JIRA] (CDI-129) Clarify behaviour of @ApplicationScoped in EARs

Mark Struberg (JIRA) jira-events at lists.jboss.org
Thu Oct 18 03:41:02 EDT 2012


    [ https://issues.jboss.org/browse/CDI-129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12727541#comment-12727541 ] 

Mark Struberg commented on CDI-129:
-----------------------------------

what is 'shared mail service' ?

If we assume 
{code}
@ApplicationScoped 
public class MailService {
  @Inject R r;
  ...
}
{code}


then each webapp would get it's own contextual instance. Thus the MailService instance of your very webapp inoking r.someMethod() would work on an instance of S.

For another webapp you might end up with an instance of R because this webapp doesn't specialize S.


> S, however S is not accessible from the MailService so this is wrong

Dude, who is creating the instance of MailService? It is the BeanManager which uses the TCCL of your webapp. Also: this BeanManager of your webapp knows all enabled Bean<?> of your webapp, so it will perfectly be able to resolve Bean<S>.
                
> Clarify behaviour of @ApplicationScoped in EARs
> -----------------------------------------------
>
>                 Key: CDI-129
>                 URL: https://issues.jboss.org/browse/CDI-129
>             Project: CDI Specification Issues
>          Issue Type: Clarification
>          Components: Contexts
>    Affects Versions: 1.0
>            Reporter: Mark Struberg
>            Assignee: Pete Muir
>             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 (WAR file).
> There is currently no specified CDI scope for providing a single shared instance for a whole EAR.
> 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.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the cdi-dev mailing list