Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
None
-
None
-
None
-
ALL
Description
JSF implementations should treat the following framework components as JEE
components, and pass them through the default WebInjectionProvider.inject()
method part of any instantiation process. E.g: Whether or not the framework is
instantiating the object for it's use, or the user is asking the framework for a
new instance.
The benefit: This means that any container provided injection points would
automatically be available in the following artifacts:
- ManagedBean
- PhaseListener
- SystemEventListener
- Converter
- Validator
- ... more?
For extension writers:
Support for native container-injection for all artifacts defined in
section 11.4.6 of the JSR-314 spec.
■ ActionListener
■ ApplicationFactory
■ FacesContextFactory
■ LifecycleFactory
■ NavigationHandler
■ PropertyResolver
■ RenderKit
■ RenderKitFactory
■ ResourceHandler
■ StateManager
■ VariableResolver
■ ViewHandler
There is a related SPEC issue, Mojarra enhancement, and GlassFish bug also involved in getting this
standardized across the board:
https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=763
https://glassfish.dev.java.net/issues/show_bug.cgi?id=11655
https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1578