Hi All,
I am trying to use SDO from within an OSGI bundle and am having a hard time.
I've gotten to the point of being able to install and resolve the following:
tuscany-sdo-impl-1.1.1.jar
tuscany-sdo-lib-1.1.1.jar
tuscany-sdo-api-r2.1-1.1.1.jar
my bundles (one is app, one is util lib)
but this is through hacking at the manifests.
The manifests for each are attached.
Import package for my util bundle contains:
org.apache.tuscany.sdo.helper,org.apache.tuscany.sdo.spi,commonj.sdo,commonj.sdo.helper,commonj.sdo.impl,
org.apache.tuscany.sdo.api,.
Import package for app contains same.
When starting my app bundle after installing all the others, I get:
java.lang.NoClassDefFoundError: org/apache/tuscany/sdo/spi/HelperProviderBase
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at
org.apache.felix.framework.searchpolicy.ModuleImpl$ModuleClassLoader.findClass(ModuleImpl.java:1544)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:509)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.access$100(ModuleImpl.java:59)
at
org.apache.felix.framework.searchpolicy.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1434)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.getClassByDelegation(ModuleImpl.java:428)
at
org.apache.felix.framework.searchpolicy.R4Wire.getClass(R4Wire.java:108)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.searchImports(ModuleImpl.java:1131)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:504)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.access$100(ModuleImpl.java:59)
at
org.apache.felix.framework.searchpolicy.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1434)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at
mil.af.rl.rigc.sarm.nerve.sdk.AbstractNerve.onAuthenticated(AbstractNerve.java:65)
at
mil.af.rl.rigc.sarm.utils.AbstractXmppAgent.exec(AbstractXmppAgent.java:130)
at mil.af.rl.rigc.sarm.nerve.winhost.DemoNerve.start(DemoNerve.java:57)
at
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:589)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1458)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:984)
at
org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:263)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException:
org.apache.tuscany.sdo.spi.HelperProviderBase
at
org.apache.felix.framework.searchpolicy.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:565)
at
org.apache.felix.framework.searchpolicy.ModuleImpl.access$100(ModuleImpl.java:59)
at
org.apache.felix.framework.searchpolicy.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1434)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
... 23 more
My environment is
Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
Windows XP
org.apache.felix.main-1.5.0-20090317.125733-9.jar
Using bnd-0.0.249.jar to OSGI-ify jars after stripping them (could not get to
work with given OSGI headers, due to missing spec bundle and other messages)
I've tried hand modifying with various versions of manifest, using
require-bundle in one try, Bundle-Classpath with impl jar embedded in app jar
in another try.
I found Issue 1293 from last year, but the fixes seem to have been applied and
I'm still getting ClassNotFound error.
Any help is greatly appreciated,
Thanks,
Bill Barnhill
LIB-MANIFEST.MF
Description: LIB-MANIFEST.MF
IMPL-MANIFEST.MF
Description: IMPL-MANIFEST.MF
API-MANIFEST.MF
Description: API-MANIFEST.MF
