[ https://issues.apache.org/jira/browse/FELIX-2941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13026692#comment-13026692 ]
John Ross commented on FELIX-2941: ---------------------------------- The attached jar fixes the issue. The CT will execute successfuly using IBM JVM 5 and 6 (and continues to do so on Oracle 6 and IBM 4.2). > 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-3.2.0, framework.security-1.4.1 > 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 > Assignee: Karl Pauls > Attachments: felix.jar > > > 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