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

Wicket 1.5 rewrites template content where it should not

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.5.4
    • 1.5.5, 6.0.0-beta1
    • wicket
    • None

    Description

      I have recently upgraded from Wicket 1.4.14 to 1.5.4. One issue that I
      encountered is that <script> tags in panel templates are rewritten by
      Wicket, even when the <script> tags in question have no wicket handlers
      attached to them. I.e. the following panel template (notice that there
      are no wicket:id attributes whatsoever):

      <wicket:panel>
      <script id="template-upload" type="text/x-jquery-tmpl">
      <span>${name}</span>
      </script>
      </wicket:panel>

      Would render in the panel as:

      <script id="template-upload" type="text/x-jquery-tmpl">
      /<![CDATA[/
      <span>${name}</span>
      /]]>/
      </script>

      Imho this is unwanted behavior that is a regression from the behavior in
      Wicket 1.4.x (or at least 1.4.14). Wicket should not add content to the
      body of the script tags (or any other tags in a template, unless their
      content is provided programmatically), as it does not have the knowledge
      how that affects the functionality of the page. Moreover, the content
      that Wicket adds to these script tags is only correct for Javascript
      (hence incorrect for the scripts in the example as they are not
      javascript). In the above example adding /*, */
      will change the functionality of the script tag. If the "/<![CDATA[/"
      part was necessary in the script tags above, they should be added by the
      person that provides the template, not magically added by Wicket.

      I have attached a quickstart that demonstrates the issue. The quickstart has a <script id="script1">Some Text</script> element in HomePage.html that (by javascript) is shown in an alert box. Because of this bug, the alert will now start with "/<![CDATA[/", while it should simply show the text. See HomePage.html in the provided quickstart.

      Attachments

        1. WICKET-4425.patch
          1 kB
          Martin Tzvetanov Grigorov
        2. myproject.zip
          26 kB
          Pointbreak

        Issue Links

          Activity

            People

              mgrigorov Martin Tzvetanov Grigorov
              pointbreak Pointbreak
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: