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

META-INF resource lookup in OSGi environment

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.0-beta-2
    • 2.0.0-beta-2
    • General
    • None

    Description

      MyFaces uses context class loader to lookup META-INF resources. This works fine in a regular Java environment but breaks in OSGi. One easy solution for this would be to first ask the CCL for the resource and if none is found ask the surrounding class class loader for that resource (assuming the resource we are looking for lives in the same jar as the class loading it), i.e.:

      URL foo = getContextClassLoader().getResource("META-INF/foo");
      if (foo == null) {
      foo = getClass().getClassLoader().getResource("META-INF/foo");
      }

      There are a few places in MyFaces code that would need to be updated to use this fallback approach. For example in IncludeHandler.java and ErrorPageWriter.java.

      I also noticed that for some reason the myfaces-dev-debug.xml and myfaces-dev-error.xml live in the api module. They seem to be only used the impl module so they shouldn't really be needed in the api module.

      Attachments

        1. MYFACES-2548.patch
          5 kB
          Jarek Gawor

        Issue Links

          Activity

            People

              jakobkorherr Jakob Korherr
              gawor@mcs.anl.gov Jarek Gawor
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: