-
Type:
New Feature
-
Status: Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: facesbridge-tck-5.0.0, facesbridge-spec-5.0.0, bridge-impl-5.0.0
-
Labels:None
Section 20.3.1 of the Portlet 3.0 Specification titled "Portlet Request Scoped Beans" provides a table that lists all of the @Named @PortletRequestScoped CDI beans and their corresponding EL names. Since the FacesBridge provides factories that potentially decorate these @PortletRequestScoped beans, the FacesBridge should be required to provide @Alternative CDI producers.
Example from the FacesBridge RI:
BridgePortletConfigProducer.java
@Alternative @Dependent @Priority(Interceptor.Priority.APPLICATION + 10) public class BridgePortletConfigProducer { @Named(value = "portletConfig") @PortletRequestScoped @Produces public PortletConfig getPortletConfig() { return RequestMapUtil.getPortletConfig(FacesContext.getCurrentInstance()); } }
The following is a list of beans that would require @Alternative CDI producers:
EL Name | FacesBridge Factory | Related Issue |
actionParams | BridgePortletRequestFactory | |
actionRequest | BridgePortletRequestFactory | |
actionResponse | BridgePortletResponseFactory | |
clientDataRequest | BridgePortletRequestFactory | |
contextPath | BridgePortletRequestFactory | |
cookies | BridgePortletRequestFactory | |
eventRequest | BridgePortletRequestFactory | |
eventResponse | BridgePortletResponseFactory | |
headerRequest | BridgePortletRequestFactory | |
headerResponse | BridgePortletResponseFactory | |
locales | BridgePortletRequestFactory | |
mimeResponse | BridgePortletResponseFactory | |
mutableRenderParams | BridgePortletRequestFactory | |
namespace | BridgePortletResponseFactory | |
portletConfig | BridgePortletConfigFactory | |
portletContext | BridgePortletConfigFactory | |
portletMode | BridgePortletRequestFactory | |
portletName | BridgePortletConfigFactory | |
portletPreferences | BridgePortletRequestFactory | |
portletRequest | BridgePortletRequestFactory | |
portletResponse | BridgePortletResponseFactory | |
portletSession | BridgePortletRequestFactory | |
renderParams | BridgePortletRequestFactory | |
renderRequest | BridgePortletRequestFactory | |
renderResponse | BridgePortletResponseFactory | |
resourceRequest | BridgePortletRequestFactory | |
resourceResponse | BridgePortletResponseFactory | |
stateAwareResponse | BridgePortletResponseFactory | |
windowId | BridgePortletRequestFactory | |
windowState | BridgePortletRequestFactory |
TCK: portletRequestScopedBeanInjectTest (bridge-tck-cdi-portlet)
- @Inject each of the named beans into a Java class and verify that the injected instances are equal to those that are produced by the FacesBridge factories.