Hi,
I implemented a class with a static getCondition-method, that negates
the returned value of BundleLocationCondition.getCondition().
But when I set a Conditional Permission Info with my class
"NotBundleLocationCondition" and the CPA wants to get the Condition a
ClassNotFoundException occurs. My bundle exports the package containing
the class.
How can I tell the Conditional Permission Admin to import it?

regards
Manuel

<code snippet>
cpa.setConditionalPermissionInfo("MyCondition", 
    new ConditionInfo[]{
        new ConditionInfo(NotBundleLocationCondition.class.getName(),
        new String[]{"foobar*"})
    },
    new PermissionInfo[]{
        new PermissionInfo(AllPermission.class.getName(), "", "")
    }
);
</code snippet>

<exception>
java.lang.ClassNotFoundException:
org.trialox.platform.security.NotBundleLocationCondition
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:169)
        at
org.apache.felix.framework.security.util.Conditions.isSatisfied(Conditions.java:142)
        at
org.apache.felix.framework.security.condpermadmin.ConditionalPermissionAdminImpl.eval(ConditionalPermissionAdminImpl.java:443)
        at
org.apache.felix.framework.security.condpermadmin.ConditionalPermissionAdminImpl.hasPermission(ConditionalPermissionAdminImpl.java:362)
        at
org.apache.felix.framework.SecurityProviderImpl.hasBundlePermission(SecurityProviderImpl.java:124)
        at
org.apache.felix.framework.Felix.impliesBundlePermission(Felix.java:3363)
        at
org.apache.felix.framework.BundleProtectionDomain.implies(BundleProtectionDomain.java:38)
        at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:301)
        at
java.security.AccessController.checkPermission(AccessController.java:546)
        at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
        at
org.apache.felix.framework.security.condpermadmin.ConditionalPermissionInfoImpl.delete(ConditionalPermissionInfoImpl.java:124)
        at
org.trialox.platform.security.PermissionManager.deleteUserBundlePermissions(PermissionManager.java:255)
        at
org.trialox.platform.security.PermissionManager.activate(PermissionManager.java:166)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
org.apache.felix.scr.impl.ImmediateComponentManager.createImplementationObject(ImmediateComponentManager.java:226)
        at
org.apache.felix.scr.impl.ImmediateComponentManager.createComponent(ImmediateComponentManager.java:133)
        at
org.apache.felix.scr.impl.AbstractComponentManager.activateInternal(AbstractComponentManager.java:476)
        at org.apache.felix.scr.impl.AbstractComponentManager.access
$100(AbstractComponentManager.java:36)
        at org.apache.felix.scr.impl.AbstractComponentManager
$2.run(AbstractComponentManager.java:142)
        at
org.apache.felix.scr.impl.ComponentActorThread.run(ComponentActorThread.java:85)

</exception>



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to