ICEfaces
  1. ICEfaces
  2. ICE-8304

CoreRenderer.decodeBehaviors(-) imprecisely matches components

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.1.0.BETA1
    • Fix Version/s: 3.3
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ACE
    • Assignee Priority:
      P1

      Description

      Discovered when looking into ICE-8301, it appears that a container component can get a false positive in thinking that a behavior event for a child component was for itself, as long as they support behavior events of the same name. The most likely scenario would be of the container component being nested in another component of its own type.

      It's due to the imprecise matching of event sources to components:

          String behaviorSource = params.get("javax.faces.source");
          String clientId = component.getClientId();
          if(behaviorSource != null && behaviorSource.startsWith(clientId)) {

      Any naming container ancestor of the actual source would have a false positive match with the use of startsWith(-).

        Activity

        Mark Collette created issue -
        Ken Fyten made changes -
        Field Original Value New Value
        Fix Version/s 3.3 [ 10370 ]
        Fix Version/s 3.2 [ 10338 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #33185 Wed Jan 23 11:29:32 MST 2013 nils.lundquist ICE-8304 - Alterered CoreRenderer.decodeBehaviours to match complete component id.
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/renderkit/CoreRenderer.java
        Ken Fyten made changes -
        Assignee Nils Lundquist [ nils.lundquist ]
        Ken Fyten made changes -
        Assignee Priority P1 [ 10010 ]
        Hide
        Nils Lundquist added a comment -

        Initial checks with showcase look favorable. Possibility still exists that this change may still cause a regression in the border cases of some components.

        Revision #33185
        Committed by nils.lundquist
        2 minutes ago
        ICE-8304 - Alterered CoreRenderer.decodeBehaviours to match complete component id.

        Show
        Nils Lundquist added a comment - Initial checks with showcase look favorable. Possibility still exists that this change may still cause a regression in the border cases of some components. Revision #33185 Committed by nils.lundquist 2 minutes ago ICE-8304 - Alterered CoreRenderer.decodeBehaviours to match complete component id.
        Nils Lundquist made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

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

            Dates

            • Created:
              Updated:
              Resolved: