Felix Framework 3.2.0 and Framework Security 1.4.2 fails OSGI Conditional
Permission Admin CT when running on IBM JVM 5 and 6.
------------------------------------------------------------------------------------------------------------------------------
Key: FELIX-2941
URL: https://issues.apache.org/jira/browse/FELIX-2941
Project: Felix
Issue Type: Bug
Components: Framework, Framework Security
Affects Versions: framework.security-1.4.1, framework-3.2.0
Environment: java version "1.6.0"
Java(TM) SE Runtime Environment (build pwi3260sr9-20101125_01(SR9))
IBM J9 VM (build 2.4, JRE 1.6.0 IBM J9 2.4 Windows XP x86-32
jvmwi3260sr9-20101124_69295 (JIT enabled, AOT enabled)
J9VM - 20101124_069295
JIT - r9_20101028_17488ifx2
GC - 20101027_AA)
JCL - 20101119_01
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pwi32devifx-20070725
(SR5a))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32
j9vmwi3223-20070426 (JIT enabled)
J9VM - 20070420_12448_lHdSMR
JIT - 20070419_1806_r8
GC - 200704_19)
JCL - 20070725
Reporter: John Ross
I was executing the ConditionalTestControl.testMultipleBundlesOnStack() test
case of the org.osgi.test.cases.condpermadmin CT using
org.apache.felix.framework-3.2.0.jar and
org.apache.felix.framework.security-1.4.2.jar but ran into the following issue
using IBM JVM 5 and 6. Ran fine on Oracle JVM 6 and IBM JVM 4.2.
org.osgi.framework.BundleException: Activator start error in bundle
org.osgi.test.cases.condpermadmin.tb2 [5].
at org.apache.felix.framework.Felix.activateBundle(Felix.java:1899)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1769)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:914)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.installBundle(DefaultTestBundleControl.java:510)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.installBundle(DefaultTestBundleControl.java:496)
at
org.osgi.test.cases.condpermadmin.junit.ConditionalTestControl.setState(ConditionalTestControl.java:823)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.setUp(DefaultTestBundleControl.java:51)
at junit.framework.TestCase.runBare(TestCase.java:128)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
at aQute.junit.Activator.test(Activator.java:200)
at aQute.junit.Activator.run(Activator.java:51)
Caused by: java.lang.SecurityException: java.security.AccessControlException:
Access denied (java.lang.RuntimePermission getClassLoader)
at org.apache.felix.framework.Felix$1.checkPermission(Felix.java:560)
at java.lang.ClassLoader.getParent(ClassLoader.java:420)
at
org.apache.felix.framework.ModuleImpl.getBootDelegationClassLoader(ModuleImpl.java:1684)
at
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:722)
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)
at
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1801)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at
org.osgi.test.cases.condpermadmin.tb2.Activator.start(Activator.java:44)
at
org.apache.felix.framework.util.SecureAction$Actions.run(SecureAction.java:1243)
at
java.security.AccessController.doPrivileged(AccessController.java:284)
at
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:620)
at org.apache.felix.framework.Felix.activateBundle(Felix.java:1852)
... 16 more
Caused by: java.security.AccessControlException: Access denied
(java.lang.RuntimePermission getClassLoader)
at
java.security.AccessController.checkPermission(AccessController.java:108)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
at org.apache.felix.framework.Felix$1.checkPermission(Felix.java:556)
... 27 more
# add error to
testMultipleBundlesOnStack(org.osgi.test.cases.condpermadmin.junit.ConditionalTestControl)
: Activator start error in bundle org.osgi.test.cases.condpermadmin.tb2 [5].
org.osgi.framework.BundleException: Activator start error in bundle
org.osgi.test.cases.condpermadmin.tb2 [5].
at org.apache.felix.framework.Felix.activateBundle(Felix.java:1899)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1769)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:914)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.installBundle(DefaultTestBundleControl.java:510)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.installBundle(DefaultTestBundleControl.java:496)
at
org.osgi.test.cases.condpermadmin.junit.ConditionalTestControl.setState(ConditionalTestControl.java:823)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.setUp(DefaultTestBundleControl.java:51)
at junit.framework.TestCase.runBare(TestCase.java:128)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
at aQute.junit.Activator.test(Activator.java:200)
at aQute.junit.Activator.run(Activator.java:51)
Caused by: java.lang.SecurityException: java.security.AccessControlException:
Access denied (java.lang.RuntimePermission getClassLoader)
at org.apache.felix.framework.Felix$1.checkPermission(Felix.java:560)
at java.lang.ClassLoader.getParent(ClassLoader.java:420)
at
org.apache.felix.framework.ModuleImpl.getBootDelegationClassLoader(ModuleImpl.java:1684)
at
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:722)Not
able to install testbundle bundle://2.0:0/tb2.jar
Nested java.lang.SecurityException: java.security.AccessControlException:
Access denied (java.lang.RuntimePermission getClassLoader)
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)
at
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1801)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at
org.osgi.test.cases.condpermadmin.tb2.Activator.start(Activator.java:44)
at
org.apache.felix.framework.util.SecureAction$Actions.run(SecureAction.java:1243)
at
java.security.AccessController.doPrivileged(AccessController.java:284)
at
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:620)
at org.apache.felix.framework.Felix.activateBundle(Felix.java:1852)
... 16 more
Caused by: java.security.AccessControlException: Access denied
(java.lang.RuntimePermission getClassLoader)
at
java.security.AccessController.checkPermission(AccessController.java:108)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
at org.apache.felix.framework.Felix$1.checkPermission(Felix.java:556)
... 27 more
# <<
testMultipleBundlesOnStack(org.osgi.test.cases.condpermadmin.junit.ConditionalTestControl),
fails=1
# out: Not able to install testbundle bundle://2.0:0/tb2.jar
Nested java.lang.SecurityException: java.security.AccessControlException:
Access denied (java.lang.RuntimePermission getClassLoader)
# err: org.osgi.framework.BundleException: Activator start error in bundle
org.osgi.test.cases.condpermadmin.tb2 [5].
at org.apache.felix.framework.Felix.activateBundle(Felix.java:1899)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1769)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:914)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.installBundle(DefaultTestBundleControl.java:510)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.installBundle(DefaultTestBundleControl.java:496)
at
org.osgi.test.cases.condpermadmin.junit.ConditionalTestControl.setState(ConditionalTestControl.java:823)
at
org.osgi.test.support.compatibility.DefaultTestBundleControl.setUp(DefaultTestBundleControl.java:51)
at junit.framework.TestCase.runBare(TestCase.java:128)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
at aQute.junit.Activator.test(Activator.java:200)
at aQute.junit.Activator.run(Activator.java:51)
Caused by: java.lang.SecurityException: java.security.AccessControlException:
Access denied (java.lang.RuntimePermission getClassLoader)
at org.apache.felix.framework.Felix$1.checkPermission(Felix.java:560)
at java.lang.ClassLoader.getParent(ClassLoader.java:420)
at
org.apache.felix.framework.ModuleImpl.getBootDelegationClassLoader(ModuleImpl.java:1684)
at
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:722)
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)
at
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1801)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at
org.osgi.test.cases.condpermadmin.tb2.Activator.start(Activator.java:44)
at
org.apache.felix.framework.util.SecureAction$Actions.run(SecureAction.java:1243)
at
java.security.AccessController.doPrivileged(AccessController.java:284)
at
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:620)
at org.apache.felix.framework.Felix.activateBundle(Felix.java:1852)
... 16 more
Caused by: java.security.AccessControlException: Access denied
(java.lang.RuntimePermission getClassLoader)
at
java.security.AccessController.checkPermission(AccessController.java:108)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
at org.apache.felix.framework.Felix$1.checkPermission(Felix.java:556)
... 27 more
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira