[ 
https://issues.apache.org/jira/browse/FELIX-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12707657#action_12707657
 ] 

Ulf Dittmer edited comment on FELIX-1101 at 5/9/09 5:23 AM:
------------------------------------------------------------

There's another issue that prevents some bundles (like 
org.apache.felix.scr-1.0.8.jar) to be started if the PA/CPA bundle is active. 
Trying to start it results in the exception quoted below. The missing method is 
part of BundleImpl, not Felix. Maybe the getDeclaredMethod call should be done 
repeatedly with the respective superclass if it fails?

     [java] java.lang.NoSuchMethodException: 
org.apache.felix.framework.Felix.getSignerMatcher()
     [java]     at java.lang.Class.getDeclaredMethod(Class.java:1909)
     [java]     at 
org.osgi.framework.AdminPermission.createSigner(AdminPermission.java:245)
     [java]     at 
org.osgi.framework.AdminPermission.access$200(AdminPermission.java:43)
     [java]     at 
org.osgi.framework.AdminPermission$1.run(AdminPermission.java:227)
     [java]     at java.security.AccessController.doPrivileged(Native Method)
     [java]     at 
org.osgi.framework.AdminPermission.getBundleDictionary(AdminPermission.java:221)
     [java]     at 
org.osgi.framework.AdminPermission.implies(AdminPermission.java:197)
     [java]     at 
org.osgi.framework.AdminPermissionCollection.implies(AdminPermission.java:442)
     [java]     at 
org.apache.felix.framework.security.util.Permissions.implies(Permissions.java:393)
     [java]     at 
org.apache.felix.framework.security.permissionadmin.PermissionAdminImpl.check(PermissionAdminImpl.java:175)
     [java]     at 
org.apache.felix.framework.security.permissionadmin.PermissionAdminImpl.hasPermission(PermissionAdminImpl.java:157)
     [java]     at 
org.apache.felix.framework.SecurityProviderImpl.hasBundlePermission(SecurityProviderImpl.java:109)
     [java]     at 
org.apache.felix.framework.Felix.impliesBundlePermission(Felix.java:3312)
     [java]     at 
org.apache.felix.framework.BundleProtectionDomain.implies(BundleProtectionDomain.java:46)
     [java]     at 
java.security.AccessControlContext.checkPermission(AccessControlContext.java:249)
     [java]     at 
java.security.AccessController.checkPermission(AccessController.java:427)
     [java]     at 
java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
     [java]     at 
org.apache.felix.framework.BundleImpl.getHeaders(BundleImpl.java:239)
     [java]     at 
org.apache.felix.framework.BundleImpl.getHeaders(BundleImpl.java:230)
     [java]     at 
org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:210)
     [java]     at 
org.apache.felix.scr.impl.Activator.loadAllComponents(Activator.java:193)
     [java]     at org.apache.felix.scr.impl.Activator.start(Activator.java:102)
     [java]     at 
org.apache.felix.framework.util.SecureAction$Actions.run(SecureAction.java:1114)
     [java]     at java.security.AccessController.doPrivileged(Native Method)
     [java]     at 
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:580)
     [java]     at org.apache.felix.framework.Felix.startBundle(Felix.java:1458)
     [java]     at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:774)
     [java]     at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:755) 

      was (Author: udittmer):
    There's another issue that prevents some bundles (like 
org.apache.felix.scr-1.0.8.jar) to be started if the PA/CPA bundle is active. 
Trying to start it results in the exception quoted below. That method is part 
of BundleImpl, not Felix. Maybe the getDeclaredMethod call should be done 
repeatedly with the respective superclass if it fails?

     [java] java.lang.NoSuchMethodException: 
org.apache.felix.framework.Felix.getSignerMatcher()
     [java]     at java.lang.Class.getDeclaredMethod(Class.java:1909)
     [java]     at 
org.osgi.framework.AdminPermission.createSigner(AdminPermission.java:245)
     [java]     at 
org.osgi.framework.AdminPermission.access$200(AdminPermission.java:43)
     [java]     at 
org.osgi.framework.AdminPermission$1.run(AdminPermission.java:227)
     [java]     at java.security.AccessController.doPrivileged(Native Method)
     [java]     at 
org.osgi.framework.AdminPermission.getBundleDictionary(AdminPermission.java:221)
     [java]     at 
org.osgi.framework.AdminPermission.implies(AdminPermission.java:197)
     [java]     at 
org.osgi.framework.AdminPermissionCollection.implies(AdminPermission.java:442)
     [java]     at 
org.apache.felix.framework.security.util.Permissions.implies(Permissions.java:393)
     [java]     at 
org.apache.felix.framework.security.permissionadmin.PermissionAdminImpl.check(PermissionAdminImpl.java:175)
     [java]     at 
org.apache.felix.framework.security.permissionadmin.PermissionAdminImpl.hasPermission(PermissionAdminImpl.java:157)
     [java]     at 
org.apache.felix.framework.SecurityProviderImpl.hasBundlePermission(SecurityProviderImpl.java:109)
     [java]     at 
org.apache.felix.framework.Felix.impliesBundlePermission(Felix.java:3312)
     [java]     at 
org.apache.felix.framework.BundleProtectionDomain.implies(BundleProtectionDomain.java:46)
     [java]     at 
java.security.AccessControlContext.checkPermission(AccessControlContext.java:249)
     [java]     at 
java.security.AccessController.checkPermission(AccessController.java:427)
     [java]     at 
java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
     [java]     at 
org.apache.felix.framework.BundleImpl.getHeaders(BundleImpl.java:239)
     [java]     at 
org.apache.felix.framework.BundleImpl.getHeaders(BundleImpl.java:230)
     [java]     at 
org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:210)
     [java]     at 
org.apache.felix.scr.impl.Activator.loadAllComponents(Activator.java:193)
     [java]     at org.apache.felix.scr.impl.Activator.start(Activator.java:102)
     [java]     at 
org.apache.felix.framework.util.SecureAction$Actions.run(SecureAction.java:1114)
     [java]     at java.security.AccessController.doPrivileged(Native Method)
     [java]     at 
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:580)
     [java]     at org.apache.felix.framework.Felix.startBundle(Felix.java:1458)
     [java]     at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:774)
     [java]     at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:755) 
  
> framework.security can't be built or run against Felix 1.6
> ----------------------------------------------------------
>
>                 Key: FELIX-1101
>                 URL: https://issues.apache.org/jira/browse/FELIX-1101
>             Project: Felix
>          Issue Type: Bug
>          Components: Conditional Permission Admin, Permission Admin
>    Affects Versions: felix-1.6.0
>            Reporter: Ulf Dittmer
>            Assignee: Karl Pauls
>         Attachments: framework-security.zip, security.diff
>
>
> The org.apache.felix.framework.SecurityActivator and 
> org.apache.felix.framework.SecurityProviderImpl classes have a dependency on 
> the org.apache.felix.framework.FelixBundle class, which seems to have been 
> removed since Felix 1.4 (which, BTW, works fine with the PermissionAdmin 
> service).
> Most -but not all- of the required methods seem to be available in 
> org.apache.felix.framework.BundleImpl now. Further changes involve using 
> IModule instead of IContentLoader.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to