Click
  1. Click
  2. CLK-716

XmlConfigService throws exception with autobinding value of "default"

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: 2.2.0
    • Fix Version/s: 2.3.0-M1
    • Component/s: core
    • Labels:
      None
    • Environment:
      Java 1.6, Jetty 7, Mac OS X

      Description

      The click-2.2.dtd specifies a default value of "default" for the autobinding attribute of the pages element:

      <!-- Application pages. -->
      <!ELEMENT pages (page*, excludes*)>
      <!ATTLIST pages package CDATA #IMPLIED>
      <!ATTLIST pages automapping (true|false) "true">
      <!ATTLIST pages autobinding (default|annotation|none) "default">

      This causes the following exception when the DTD is specified in click.xml and no autobinding value is supplied (or a value of "default" is specified):

      java.lang.RuntimeException: Invalid pages autobinding attribute: default
      at org.apache.click.service.XmlConfigService.loadPages(XmlConfigService.java:994)
      at org.apache.click.service.XmlConfigService.onInit(XmlConfigService.java:240)
      at org.apache.click.ClickServlet.initConfigService(ClickServlet.java:1687)
      at org.apache.click.ClickServlet.init(ClickServlet.java:197)
      at org.apache.click.extras.spring.SpringClickServlet.init(SpringClickServlet.java:387)
      at javax.servlet.GenericServlet.init(GenericServlet.java:241)

      I marked this bug as major priority because an exception is thrown with a minimal click.xml file (at least when using the DTD), so the impact to out-of-the-box functionality is pretty severe.

      A quick look at the code reveals that XmlConfigService expects an autobinding value of "public" instead of "default". This conflicts with both the DTD and the documentation for click.xml. Since an autobinding value of "public" is not documented anywhere as far as I can tell and since XmlConfigService maps "public" to the AutoBinding.DEFAULT enum, the use of "public" is most likely a typo and should simply be replaced with "default".

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Ryan Holmes
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development