ICEfaces
  1. ICEfaces
  2. ICE-5764

ICEfaces 2.0 + PortletFaces Bridge: java.faces.ViewState hidden field getting DOM-diffed and javax.faces.encodedURL getting wiped out

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Alpha2
    • Fix Version/s: 2.0-Beta2, 2.0.0
    • Component/s: Bridge, Framework
    • Labels:
      None
    • Environment:
      Liferay 5.2.3

      Description

      Regarding the attached portlet, when doing an onblur (partialsubmit) from the "First Name" field, ICEfaces determines that the java.faces.ViewState hidden field needs to be updated, even though it is updating it with the same exact value that was there. While that introduces only a slight inefficiency, the problem is that, according to FireBug and Chrome, the value of the javax.faces.encodedURL gets wiped out and so all subsequent jsf.js Ajax requests fail.

        Activity

        Hide
        Neil Griffin added a comment -

        Here's an example of the DOM update that FireBug says is being applied after the onblur:

        <?xml version="1.0" encoding="utf-8"?>
        <partial-response><changes><update id="javax.faces.ViewState"><![CDATA[-1320574561355035683:5537851636518983223]]></update></changes></partial-response>

        Show
        Neil Griffin added a comment - Here's an example of the DOM update that FireBug says is being applied after the onblur: <?xml version="1.0" encoding="utf-8"?> <partial-response><changes><update id="javax.faces.ViewState"><![CDATA [-1320574561355035683:5537851636518983223] ]></update></changes></partial-response>
        Hide
        Neil Griffin added a comment - - edited

        This can also be reproduced using these steps:

        Clicking on the ice:selectInputDate popup indeed pops up the calendar, but can't click on anything after that. After the DOM replacement of <div class="iceSelInpDatePopup">...</div>, the javax.faces.encodedURL is empty according to FireBug.

        Show
        Neil Griffin added a comment - - edited This can also be reproduced using these steps: Clicking on the ice:selectInputDate popup indeed pops up the calendar, but can't click on anything after that. After the DOM replacement of <div class="iceSelInpDatePopup">...</div>, the javax.faces.encodedURL is empty according to FireBug.
        Hide
        Deryk Sinotte added a comment -

        It's possible that after some of the current work Ted has done with ICEfaces 2 and the new Portlet Bridge that some or all of the older portlet related issues are no longer relevant. Assigning to Ted to verify which can be closed and which may still need more work.

        Show
        Deryk Sinotte added a comment - It's possible that after some of the current work Ted has done with ICEfaces 2 and the new Portlet Bridge that some or all of the older portlet related issues are no longer relevant. Assigning to Ted to verify which can be closed and which may still need more work.
        Hide
        Ted Goddard added a comment -

        ICE-5796 provides a fix for resetHiddenFields() which was causing the portlet field to be erased (a special case has been added for now).

        Show
        Ted Goddard added a comment - ICE-5796 provides a fix for resetHiddenFields() which was causing the portlet field to be erased (a special case has been added for now).

          People

          • Assignee:
            Ted Goddard
            Reporter:
            Neil Griffin
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: