ICEfaces
  1. ICEfaces
  2. ICE-7921

f:ajax / ace:ajax behaviour differences in MyFaces vs. Mojarra JSF

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: 3.0
    • Fix Version/s: 3.2
    • Component/s: None
    • Labels:
      None
    • Environment:
      Using f:ajax or ace:ajax tag with MyFaces JSF (2.1.6)
    • Affects:
      Compatibility/Configuration

      Description

      When using the f:ajax, or ace:ajax tags with MyFaces JSF it has been noted that there are some important differences in how MyFaces processes certain attribute values vs. Mojarra.

      Specifically,

      With MyFaces (execute=@none render=@all, and execute=@all render=@none), the difference with Mojarra is that the listener method is invoked in MyFaces, whereas it is not invoked in Mojarra. The expected outcome for the components that are executed/rendered according to the execute and render attributes is still correct in both cases. So, this seems to be more of a difference of how MyFaces and Mojarra handle ajax requests. It seems like MyFaces still executes the listener method, and if this method modifies the value of some property, then the components affected by that change are updated, while Mojarra simply doesn't render and/or execute anything. Another way of putting it is that Mojarra has a "hard" @none keyword and MyFaces has a soft @none keyword. This can be seen with a simple h:commandButton component using f:ajax.

      Due to these differences, some of the ace:ajax regression tests fail on MyFaces:

           execute='@none', render='@all' Test : Expected Status = , Actual = fAjax aceAjax
              execute='@all', render='@none' Test : Expected Status = fAjax aceAjax , Actual = fAjax aceAjax fAjax
              onError JavaScript Callback Test : Expected Value A = 0, Actual value = 1, Expected Value B = 0, Actual value = 1

      This seems like a likely MyFaces bug.

        Activity

        Hide
        Ken Fyten added a comment -

        Need to further investigate this issue and possibly log an bug with MyFaces.

        Show
        Ken Fyten added a comment - Need to further investigate this issue and possibly log an bug with MyFaces.
        Hide
        Jerome Ruzol added a comment -

        adding a possible related issue:

        PaneChange event test with ajax disabled fails, the values are increased by 1; another behavior is that once the first event has been triggered, actual value increments by 2 instead of 1 after reset of values

        Show
        Jerome Ruzol added a comment - adding a possible related issue: PaneChange event test with ajax disabled fails, the values are increased by 1; another behavior is that once the first event has been triggered, actual value increments by 2 instead of 1 after reset of values
        Hide
        Nils Lundquist added a comment - - edited

        This issue has been fixed locally via a patch to our MyFaces jars discussed in ICE-8396.
        The fix has also been adopted by MyFaces and will be resolved in the next release.

        Show
        Nils Lundquist added a comment - - edited This issue has been fixed locally via a patch to our MyFaces jars discussed in ICE-8396. The fix has also been adopted by MyFaces and will be resolved in the next release.

          People

          • Assignee:
            Nils Lundquist
            Reporter:
            Ken Fyten
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: