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

error from WebPage # reportMissingHead

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 6.20.0, 7.0.0-M6
    • 7.0.0, 6.21.0
    • wicket
    • None

    Description

      Use case
      -----------
      on 'PageWithForm', after having filled the form, the user press a submit button.
      A cookie has to be updated.
      To trigger the update, a session attribute is set to false.

      Then the user is redirected to a page : setResponsePage( new ResultPage() )
      ResultPage extends Skeleton

      In the Skeleton page, if the session attribute is set to false, the cookie is updated.
      Then a NonResettingRestartException is thrown.

      Problem
      -----------
      When I throw a NonResettingRestartException() in a page where I also override renderHead()
      I get an error from WebPage # reportMissingHead

      You probably forgot to add a <body> or <head> tag to your markup since no Header Container was
      found but components were found which want to write to the <head> section.
      <script type="text/javascript" src="./resource/org.apache.wicket.resource.JQueryResourceReference/jquery/jquery-1.11.3-ver-1435772778000.js"></script>
      <link rel="canonical" href="https://localhost:8443/wicket/bookmarkable/com.quickstart.PageWithForm" />

      but body and head tags are presents.

      Sven Answer
      -----------
      you're SkeletonPage is interrupting its normal page rendering (#onInitialize() being triggered late from WebPageRenderer).
      Thus in WebPage#validateHeaders() the page doesn't find its HtmlHeaderContainer, which it expects to exists already if rendering succeeded successfully.

      So a) the error message is misleading and b) we may be able to improve this (e.g. checking #hasBeenRendered() before validating the headers).

      Attachments

        1. quickstart.zip
          33 kB
          Francois

        Issue Links

          Activity

            People

              svenmeier Sven Meier
              francois Francois
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: