Mike Evans wrote:
Thanks for your response.
I've added the the framework packages to the servicebinder jar and
that fixes the error, thanks. I'm now getting a new error when the
framework tries to load one of my bundles:
ERROR: Error starting file:bundle/ContextualisationArchitecture.jar
(org.osgi.framework.BundleException: Unresolved package in bundle 2:
package;
(&(package=org.ungoverned.gravity.servicebinder)(version>=1.1.0)))
at org.apache.felix.framework.Felix._resolveBundle(Felix.java:1650)
at org.apache.felix.framework.Felix._startBundle(Felix.java:1517)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1470)
at
org.apache.felix.framework.Felix.setFrameworkStartLevel(Felix.java:1065)
at
org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:258)
at java.lang.Thread.run(Unknown Source)
I've tried creating my bundle jar with the servicebinder.jar included
at the root level and setting the Bundle-Classpath in the manifest to
point to it, but this doesn't fix the issue. Do I have to unpack the
servicebinder jar and include the packages in all of my bundles?
No, you don't. I am not sure what exactly is going on here, but it is
clear that your bundle cannot resolve because the package is not present
in Felix. Are you sure you didn't change the exports of Service Binder
when you modified the manifest? You really need to start there. Can you
load your bundles into Felix using its shell for testing purposes? If
so, load them and see if you can get them to resolve. Do a "headers
<bundle-id>" for the Service Binder bundle and see what it has for its
Export-Package header.
At worst, you can send me the bundle offlist to look at. Even though it
is no longer under active development, you should probably consider
using the Service Binder from the Felix trunk too.
Also, I had to specify my bundle in the auto start properties of my
framework - should the service binder not auto-discover my bundles, or
have I misunderstood completely?
I am not sure I understand what you are talking about here. Service
Binder has nothing to do with auto-starting bundles.
-> richard
thanks for your time
Mike
Richard S. Hall wrote:
Original versions of the Service Binder did not include
Import-Package statements for the org.osgi.framework packages in its
manifest (since this wasn't necessary under Oscar). So, check SB's
manifest and see if you need to add them, if so, extract, add, and
rearchive. Otherwise, build the SB in Felix' trunk.
-> richard
Mike Evans wrote:
Hi All,
I have embedded Felix into Tomcat and I'm trying to start the
service binder bundle so that it can discover and bind my bundles.
When Felix tries to start the service binder I get the following
NCDFE :
ERROR: Error starting file:bundle/servicebinder1.0.jar
(org.osgi.framework.BundleException: Activator start error.)
java.lang.NoClassDefFoundError: org/osgi/framework/BundleActivator
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at
org.apache.felix.framework.searchpolicy.ContentClassLoader.findClass(ContentClassLoader.java:162)
...
I'm using the following code to start the service binder
// Create a case-insensitive configuration property map.
Map<String, String> configMap = new StringMap(false);
// Configure the Felix instance to be embedded in Tomcat.
configMap.put(FelixConstants.SERVICE_URLHANDLERS_PROP, "false");
configMap.put(FelixConstants.EMBEDDED_EXECUTION_PROP, "true");
// Add core OSGi packages to be exported from the
class path
// via the system bundle.
configMap.put(Constants.FRAMEWORK_SYSTEMPACKAGES,
"org.osgi.framework; version=1.3.0," +
"org.osgi.util.tracker; version=1.3.1," +
"org.osgi.service.packageadmin; version=1.2.0," +
"org.osgi.service.startlevel; version=1.0.0," +
"org.osgi.service.url; version=1.0.0" );
// Explicitly specify the directory to use for caching
bundles.
configMap.put(BundleCache.CACHE_PROFILE_DIR_PROP, "cache");
// Specify the auto start plugin
configMap.put(FelixConstants.AUTO_START_PROP +".1",
"file:bundle/servicebinder1.0.jar");
What do I have to do to get the service binder working?
many thanks
Mike
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]