Details
Description
While this is mostly for portlets, there is a general move with the JSF implementation to ensure that all parameters are namespaced appropriately to the NamingContainer they are in. This is valid no matter what environment they are running in. See https://java.net/jira/browse/JAVASERVERFACES-3031.
With the current version (6.2) of the LiferayFaces Bridge, it's necessary to set the following portlet configuration setting in order to get ICEpush working:
<requires-namespaced-parameters>false</requires-namespaced-parameters>
With the current version (6.2) of the LiferayFaces Bridge, it's necessary to set the following portlet configuration setting in order to get ICEpush working:
<requires-namespaced-parameters>false</requires-namespaced-parameters>
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Here is how to properly check for a namespaced UIViewRoot and prefix a parameter with the namespace:
UIViewRoot viewRoot = facesContext.getViewRoot(); if (viewRoot instanceof NamingContainer) { String namingContainerId = viewRoot.getContainerClientId(facesContext); if (namingContainerId != null) { paramName = namingContainerId + paramName; } }
Show
Neil Griffin
added a comment - Here is how to properly check for a namespaced UIViewRoot and prefix a parameter with the namespace:
UIViewRoot viewRoot = facesContext.getViewRoot();
if (viewRoot instanceof NamingContainer) {
String namingContainerId = viewRoot.getContainerClientId(facesContext);
if (namingContainerId != null ) {
paramName = namingContainerId + paramName;
}
}
Verified Icefaces 4 trunk r42072 samples and dataTable test applications. All regression tests were run. No issues specific to Context-param: "com.sun.faces.namespaceParameters=true" were found.