Uploaded image for project: 'MyFaces Core'
  1. MyFaces Core
  2. MYFACES-1812

All faces-config.xml get loaded twice from jars in WEB-INF/lib

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.2.3
    • None
    • None

    Description

      "ClassUtils.getResources(FACES_CONFIG_RESOURCE, this)" will return an iterator over all "META-INF/faces-config.xml" resources that were found. The search is carried out by starting at WebAppClassLoader and making an Enumeration of all resources with the given name that WebAppClassLoader and all its parents see. The jars placed into WEB-INF/lib will be seen by the WebAppClassLoader AND AppClassLoader, thus resulting in the same jars (the ones that have "META-INF/faces-config.xml") being placed on the list twice.

      This is fine, but things break when FacesConfigurator.feedClassloaderConfigurations() does not check for duplicate URLs and just blindly registers everything from these jars twice.

      One of the effects of this bug is that all phase listeners get registered and therefore executed twice.

      Attachments

        Activity

          People

            mmarinschek Martin Marinschek
            vace117 Val Blant
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: