Wicket
  1. Wicket
  2. WICKET-3989

MarkupNotFoundException when refreshing a component with AJAX inside a TransparentWebMarkupContainer

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.5-RC6
    • Fix Version/s: 1.5-RC7
    • Component/s: wicket
    • Labels:
      None

      Description

      A component placed inside a TransparentWebMarkupContainer, added to its parent cannot be refreshed with AJAX. See quickstart.

      1. wicket-3989.diff
        2 kB
        Emond Papegaaij
      2. wicket-3989.diff
        7 kB
        Martin Grigorov
      3. myproject.tar.gz
        17 kB
        Emond Papegaaij

        Activity

        Emond Papegaaij created issue -
        Emond Papegaaij made changes -
        Field Original Value New Value
        Attachment myproject.tar.gz [ 12491449 ]
        Hide
        Emond Papegaaij added a comment -

        The quickstart does work with RC5.1, so this is a regression.

        Show
        Emond Papegaaij added a comment - The quickstart does work with RC5.1, so this is a regression.
        Hide
        Emond Papegaaij added a comment -

        A git bisect run shows that r1151831 for WICKET-3931 introduced this problem.

        Show
        Emond Papegaaij added a comment - A git bisect run shows that r1151831 for WICKET-3931 introduced this problem.
        Hide
        Martin Grigorov added a comment -

        The problem lies in org.apache.wicket.markup.MarkupFragment.find(String). It stops looking for inner IMarkupElements if the component doesn't match and is not auto-component. I'll see how to make TransparentWebMarkupContainer's tag always auto, and what would that break.

        Show
        Martin Grigorov added a comment - The problem lies in org.apache.wicket.markup.MarkupFragment.find(String). It stops looking for inner IMarkupElements if the component doesn't match and is not auto-component. I'll see how to make TransparentWebMarkupContainer's tag always auto, and what would that break.
        Emond Papegaaij made changes -
        Attachment wicket-3989.diff [ 12491470 ]
        Martin Grigorov made changes -
        Assignee Martin Grigorov [ mgrigorov ]
        Hide
        Martin Grigorov added a comment -

        Update Emond's patch by extracting the common code in AbstractMarkupSourcingStrategy.

        Now it seems only FragmentMarkupSourcingStrategy (FMSS) doesn't reuse that common code for free.

        @Juergen: do you think that FMSS needs it too ?

        I'll modify the quickstart to a unit test.

        Show
        Martin Grigorov added a comment - Update Emond's patch by extracting the common code in AbstractMarkupSourcingStrategy. Now it seems only FragmentMarkupSourcingStrategy (FMSS) doesn't reuse that common code for free. @Juergen: do you think that FMSS needs it too ? I'll modify the quickstart to a unit test.
        Martin Grigorov made changes -
        Attachment wicket-3989.diff [ 12491471 ]
        Hide
        Martin Grigorov added a comment -

        I've heart Martijn is working on the test case too.

        Show
        Martin Grigorov added a comment - I've heart Martijn is working on the test case too.
        Martin Grigorov made changes -
        Assignee Martin Grigorov [ mgrigorov ] Martijn Dashorst [ dashorst ]
        Hide
        Martijn Dashorst added a comment -

        Assigned to RC 7, but fix should go into 1.5-RC6

        Show
        Martijn Dashorst added a comment - Assigned to RC 7, but fix should go into 1.5-RC6
        Martijn Dashorst made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Fix Version/s 1.5-RC7 [ 12317645 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Martijn Dashorst
            Reporter:
            Emond Papegaaij
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development