Hide Forgot
Help Desk Ticket Reference: https://c.na7.visual.force.com/apex/Case_View?id=500A0000004StwsIAC&sfdc.override=1 project_key: JBEPP When the state saving method is set as "client" two different portlets running on same portal page shows the exact same javax.faces.ViewState value, which might be causing one of our a4j:jsFunction not functioning properly. We placed alerts inside the script "rfResorg.ajax4jsf.javascript.AjaxScript.faces" (code snippet below) and found that problem is that the value of "options.parameters['org.ajax4jsf.portlet.NAMESPACE']" is coming as "undefined" and hence as per the line "anchor=namespace?window.document.getElementById(namespace):window.document;" the whole html document is being picked up for replacement of viewstate. ***************************************************************** var namespace = options.parameters['org.ajax4jsf.portlet.NAMESPACE']; LOG.debug("Namespace for hidden view-state input fields is "+namespace); var anchor = namespace?window.document.getElementById(namespace):window.document; var inputs = anchor.getElementsByTagName("input"); var newinputs = req.getElementsByTagName("input",idsSpan); A4J.AJAX.replaceViewState(inputs,newinputs); // For any cases, new state can be in uppercase element newinputs = req.getElementsByTagName("INPUT",idsSpan); A4J.AJAX.replaceViewState(inputs,newinputs); ***************************************************************** It seems that Portlet A's view state is replaced by Portlet B's view state. As a result, an ajax request sent by Portlet A faces Portlet B's view state, which causes the failure of invoking Portlet A's server side method.
Link: Added: This issue Cloned to PBR-223
Release Notes Docs Status: Added: Not Yet Documented
Labels: Added: EPP_5_2_1_Candidate
Release Notes Docs Status: Removed: Not Yet Documented Added: Not Required Labels: Removed: EPP_5_2_1_Candidate