[
https://issues.jboss.org/browse/JBOSGI-442?page=com.atlassian.jira.plugin...
]
Thomas Diesler updated JBOSGI-442:
----------------------------------
Description:
{quote}
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.
{quote}
[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)
was:
[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)
Circular class load issue on lazy activation
--------------------------------------------
Key: JBOSGI-442
URL:
https://issues.jboss.org/browse/JBOSGI-442
Project: JBoss OSGi
Issue Type: Bug
Security Level: Public(Everyone can see)
Reporter: Thomas Diesler
Assignee: Thomas Diesler
Fix For: JBossOSGi 1.0.0
{quote}
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.
{quote}
[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)
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira