Uploaded image for project: 'JBoss OSGi'
  1. JBoss OSGi
  2. JBOSGI-442

Circular class load issue on lazy activation

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: JBossOSGi 1.0.0
    • Component/s: None
    • Labels:
      None

      Description

      When a class load triggers the lazy activation, the Framework must first
      define the triggering class. This definition can trigger additional lazy activa-
      tions. These activations must be deferred until all transitive class loads and
      defines have finished. Thereafter, the activations must be executed in the
      reverse order of detection. That is, the last detected activation must be exe-
      cuted first. Only after all deferred activations are finished must the class
      load that triggered the activation return with the loaded class. If an error
      occurs during this process, it should be reported as a Framework ERROR
      event. However, the class load must succeed normally. A bundle that fails its
      lazy activation should not be activated again until the framework is
      restarted or the bundle is explicitly started by calling the Bundle start
      method.

      [tdiesler@tdbell core]$ mvn -Dtest=MOD65TestCase install

      testCircularityError(org.jboss.test.osgi.modules.MOD65TestCase) Time elapsed: 0.616 sec <<< ERROR!
      java.lang.ClassNotFoundException: org/jboss/test/osgi/modules/a/CircularityError
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:247)
      at org.jboss.test.osgi.modules.ModulesTestBase.loadClass(ModulesTestBase.java:129)
      at org.jboss.test.osgi.modules.ModulesTestBase.assertLoadClass(ModulesTestBase.java:102)
      at org.jboss.test.osgi.modules.MOD65TestCase.testCircularityError(MOD65TestCase.java:96)

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  thomas.diesler Thomas Diesler
                  Reporter:
                  thomas.diesler Thomas Diesler
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: