[
https://issues.jboss.org/browse/CDI-245?page=com.atlassian.jira.plugin.sy...
]
Mark Struberg commented on CDI-245:
-----------------------------------
as extensions are not defined as beans
au contraire!
Extensions are exactly defined as @ApplicationScoped @Default beans in CDI-1.0:
{quote}
An extension is a service provider of the service javax.enterprise.inject.spi.Extension
declared in META-INF/services. ...
For each service provider, the container must provide a bean of scope @ApplicationScoped
and qualifier @Default,
{quote}
I'm also not sure if the re-wording is clear enough. You changed:
- If other beans are injected into service providers
+ If other beans are injected into an extension's observer methods
But this leaves out direct injection into CDI-Extensions
{code}
public class BrokenExtension implements Extension {
private @Inject OtherExtension notAllowed;
private @Inject BeanManager holymolyIsThisAllowedQuestionmark;
}
{code}
The question whether the direct injection of a BeanManager into an Extension is ok for
CDI-1.0 remains. Not that I think this is supported by neither Weld nor OWB... ;)
I also completely miss the change where you define firing CDI lifecycle events as
non-portable.
Promote the right way how extensions should communicate with each
other during container initialization
-------------------------------------------------------------------------------------------------------
Key: CDI-245
URL:
https://issues.jboss.org/browse/CDI-245
Project: CDI Specification Issues
Issue Type: Clarification
Affects Versions: 1.0, 1.1.EDR
Reporter: Martin Kouba
Assignee: Pete Muir
Fix For: 1.1.PRD
This is not clear right now. The spec allows (does not forbid) extensions to fire regular
events via {{BeanManager}} and I believe this should be _the right way_. See also CDI-109
discussion. However we should also state that extensions _may not fire container lifecycle
events_ as this could lead to unexpected results (and it's pretty broken imho).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira