ICEfaces
  1. ICEfaces
  2. ICE-8792

Source element is undefined, cannot determine if this view is ICEfaces enabled.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.2
    • Fix Version/s: EE-3.2.0.BETA, EE-3.2.0.GA, 3.3
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces, ICEmobile

      Description


      The JavaScript log will show

      Source element is
            undefined, cannot determine if this view is ICEfaces enabled.


        Activity

        Repository Revision Date User Message
        ICEsoft Public SVN Repository #32319 Thu Nov 22 16:42:42 MST 2012 ted.goddard also search configurationOf for document.getElementById(element.id) (ICE-8792)
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/core/src/main/javascript/application.js
        Migration created issue -
        Hide
        Ted Goddard added a comment - - edited

        This occurs with several ICEmobile components:
        When jsf.ajax.response is invoked, it converts sourceid into
        an element:
        // ensure context source is the dom element and not the ID
        // per 14.4.1 of the 2.0 specification. We're doing it here
        // before any errors or events are propagated becasue the
        // DOM element may be removed after the update has been processed.
        if (typeof context.sourceid === 'string')

        { context.sourceid = document.getElementById(context.sourceid); }

        Then the page is updated by JSF.
        Then the ICEfaces bridge tries to walk up the ancestors to
        determine if the source was an ICEfaces component (to know
        whether to invoke our event listeners). In some
        cases, the page update will stomp on the source element itself,
        disconnecting it from the browser DOM. This causes the ancestor
        ascend to bail out too early.

        Show
        Ted Goddard added a comment - - edited This occurs with several ICEmobile components: When jsf.ajax.response is invoked, it converts sourceid into an element: // ensure context source is the dom element and not the ID // per 14.4.1 of the 2.0 specification. We're doing it here // before any errors or events are propagated becasue the // DOM element may be removed after the update has been processed. if (typeof context.sourceid === 'string') { context.sourceid = document.getElementById(context.sourceid); } Then the page is updated by JSF. Then the ICEfaces bridge tries to walk up the ancestors to determine if the source was an ICEfaces component (to know whether to invoke our event listeners). In some cases, the page update will stomp on the source element itself, disconnecting it from the browser DOM. This causes the ancestor ascend to bail out too early.
        Hide
        Ted Goddard added a comment - - edited

        Assignee: (was: Ted Goddard)
        Resolution: Fixed

        Show
        Ted Goddard added a comment - - edited Assignee: (was: Ted Goddard) Resolution: Fixed
        Migration made changes -
        Field Original Value New Value
        Reporter Migration [ remote ] Ted Goddard [ ted.goddard ]
        Migration made changes -
        Assignee Ted Goddard [ ted.goddard ]
        Migration made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s EE-3.2.0.GA [ 10332 ]
        Fix Version/s 3.3 [ 10370 ]
        Ken Fyten made changes -
        Fix Version/s EE-3.2.0.BETA [ 10573 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

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

            Dates

            • Created:
              Updated:
              Resolved: