Uploaded image for project: 'Wicket'
  1. Wicket
  2. WICKET-5013

Wicket Enclosure fails with more than one component

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 6.3.0
    • Fix Version/s: 6.6.0, 1.5.10
    • Component/s: wicket
    • Labels:
      None
    • Environment:
      Sun JDK 1.7.0_11
      Ubuntu 12.10

      Description

      An enclosure like:

      <wicket:enclosure child="message">
      <span wicket:id="message" />
      <a href="#" wicket:id="link"></a>
      </wicket:enclosure>

      fails with:
      org.apache.wicket.WicketRuntimeException: The component(s) below failed to render. Possible reasons could be that: 1) you have added a component in code but forgot to reference it in the markup (thus the component will never be rendered), 2) if your components were added in a parent container then make sure the markup for the child container includes them in <wicket:extend>.

      1. [ExternalLink [Component id = link]]

      It will report failed rendering for all components within the enclosure except the child.
      This works if I turn the enclosure into an inline enclosure:

      <div wicket:enclosure="message">
      <span wicket:id="message" />
      <a href="#" wicket:id="link"></a>
      </div>

      I got this error when upgrading from Wicket 6.2.0 to 6.3.0.

      I also noticed that the AjaxEnclosureListener only visits the InlineEnclosures.

        Attachments

        1. WICKET-5013.zip
          22 kB
          Christoph Leiter

          Activity

            People

            • Assignee:
              mgrigorov Martin Grigorov
              Reporter:
              magne Magne Rasmussen
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: