I haven't changed any boot delegation or system packages at all. And I don't think you need unless you need to access the globus specific classes directly from another bundle. For the pure java security provider thing, it should not be necessary.
On Mon, Mar 29, 2010 at 14:56, Tom Howe <[email protected]> wrote: > Ok, I think this makes sense (although you have to love some of the cryptic > messages java can give you sometimes). These classes are the result of a > shade operation. I assume (please correct me if I'm wrong) that I need to > add these packages (org.globus.crux.org.springframework.*) to the > bootdelegation property. > > Thanks. > Tom > > On Mon, Mar 29, 2010 at 7:32 AM, Guillaume Nodet <[email protected]> wrote: > > > Here's what I just did: > > > > #1. copy bcprov-jdk15-1.45.jar into the lib dir > > #2. copy bcprov-ext-jdk15-1.45.jar into the lib dir > > #3. copy org.globus.crux.security.sslproxies-1.0-SNAPSHOT.jar into the > lib > > dir > > #4. start karaf > > #5. run "addcommand ks (loadclass java.security.KeyStore)" > > #6. run "dev:print-stack-traces" > > #7. run "ks:getInstance PEMFilebasedKeyStore" > > > > which leads to the following exception: > > > > java.lang.reflect.InvocationTargetException > > 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.gogo.runtime.shell.Reflective.method(Reflective.java:129) > > at org.apache.felix.gogo.runtime.shell.Command.execute(Command.java:40) > > at org.apache.felix.gogo.runtime.shell.Closure.execute(Closure.java:211) > > at > > > > > org.apache.felix.gogo.runtime.shell.Closure.executeStatement(Closure.java:146) > > at org.apache.felix.gogo.runtime.shell.Pipe.run(Pipe.java:91) > > at org.apache.felix.gogo.runtime.shell.Closure.execute(Closure.java:75) > > at > > > > > org.apache.felix.gogo.runtime.shell.CommandSessionImpl.execute(CommandSessionImpl.java:71) > > at > org.apache.felix.karaf.shell.console.jline.Console.run(Console.java:177) > > at java.lang.Thread.run(Thread.java:637) > > Caused by: java.lang.NoClassDefFoundError: > > org/globus/crux/org/springframework/util/PathMatcher > > at > > > > > org.globus.security.stores.ResourceSecurityWrapperStore.<init>(ResourceSecurityWrapperStore.java:46) > > at > > > > > org.globus.security.stores.ResourceCACertStore.<init>(ResourceCACertStore.java:33) > > at > > > > > org.globus.security.provider.FileBasedKeyStore.<init>(FileBasedKeyStore.java:97) > > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > > at > > > > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > > at > > > > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > > at java.lang.reflect.Constructor.newInstance(Constructor.java:513) > > at java.lang.Class.newInstance0(Class.java:355) > > at java.lang.Class.newInstance(Class.java:308) > > at java.security.Provider$Service.newInstance(Provider.java:1221) > > at sun.security.jca.GetInstance.getInstance(GetInstance.java:220) > > at sun.security.jca.GetInstance.getInstance(GetInstance.java:147) > > at java.security.Security.getImpl(Security.java:659) > > at java.security.KeyStore.getInstance(KeyStore.java:584) > > ... 13 more > > Caused by: java.lang.ClassNotFoundException: > > org.globus.crux.org.springframework.util.PathMatcher > > 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:315) > > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330) > > at java.lang.ClassLoader.loadClass(ClassLoader.java:250) > > at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398) > > ... 27 more > > > > > > As you can see, you're missing a few classes in the jar I think. > > > > On Mon, Mar 29, 2010 at 14:11, Tom Howe <[email protected]> wrote: > > > > > I have attached a copy of the provider jar (it's not released yet). I > do > > > not have any other bundles installed (other than the basic karaf > bundles > > and > > > the bundle that is trying to load the keystore). As our provider > depends > > on > > > bouncy castle, I have the bouncy castle jars (bcprov-jdk15 and > > > bcprov-ext-jdk15) in the lib directory as well. Here is the sample > code > > > which loads the keystore: > > > > > > KeyStore keystore = KeyStore.getInstance(GlobusProvider.KEYSTORE_TYPE); > > > > > > This is just in a class loaded via blueprint in one of the bundles. > > > > > > Thanks again, > > > Tom > > > > > > > > > On Mon, Mar 29, 2010 at 3:19 AM, Guillaume Nodet <[email protected]> > > wrote: > > > > > >> Could you provide a bit more details so that we can reproduce the > > problem > > >> ? > > >> WHich jars are you using exactly (I'm not familiar with globus) ? Do > > you > > >> have any > > >> additional bundles that you deploy in addition to the jars in the lib > > >> directory ? > > >> > > >> > > >> On Mon, Mar 29, 2010 at 02:23, Tom Howe <[email protected]> > wrote: > > >> > > >> > I am trying to deploy our custom security provider into karaf (I'm > > using > > >> > 1.5.0-SNAPSHOT at the moment). I've installed my jar into the lib > > >> > directory, and put: > > >> > > > >> > org.apache.felix.karaf.security.providers = > > >> > org.globus.security.provider.GlobusProvider > > >> > > > >> > into my config.properties. I also added: org.globus.security.* to > the > > >> > org.osgi.framework.bootdelegation parameter. > > >> > > > >> > When I try to use one of the KeyStores from my provider I get: > > >> > > > >> > Error executing command: Unresolved constraint in bundle > > >> > org.globus.crux.jsse [36]: package; > > (package=org.globus.security.stores) > > >> > (The keystore class is in that package.) > > >> > > > >> > > > >> > I've tried a number of combinations of system packages and > > >> bootdelegation > > >> > parameters without any luck. > > >> > > > >> > I'd appreciate any suggestions. > > >> > > > >> > Thanks, > > >> > Tom Howe > > >> > > > >> > -- > > >> > Tom Howe > > >> > Senior Software Engineer > > >> > Distributed Systems Lab > > >> > University of Chicago/Argonne National Laboratory > > >> > > > >> > > >> > > >> > > >> -- > > >> Cheers, > > >> Guillaume Nodet > > >> ------------------------ > > >> Blog: http://gnodet.blogspot.com/ > > >> ------------------------ > > >> Open Source SOA > > >> http://fusesource.com > > >> > > > > > > > > > > > > -- > > > Tom Howe > > > Senior Software Engineer > > > Distributed Systems Lab > > > University of Chicago/Argonne National Laboratory > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [email protected] > > > For additional commands, e-mail: [email protected] > > > > > > > > > > > -- > > Cheers, > > Guillaume Nodet > > ------------------------ > > Blog: http://gnodet.blogspot.com/ > > ------------------------ > > Open Source SOA > > http://fusesource.com > > > > > > -- > Tom Howe > Senior Software Engineer > Distributed Systems Lab > University of Chicago/Argonne National Laboratory > -- Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/ ------------------------ Open Source SOA http://fusesource.com

