Hi,
I've created a itest to verify the behaviour of a extender bundle that uses
CM inside Felix and Equinox.
In Equinox everything is ok. But in Felix in getting this strange error:
ERROR: Bundle org.jbehave.osgi.core [32] EventDispatcher: Error during
dispatch. (java.lang.IllegalArgumentException: Collection must not be empty)
java.lang.IllegalArgumentException: Collection must not be empty
at
org.apache.felix.cm.impl.CaseInsensitiveDictionary.checkValue(CaseInsensitiveDictionary.java:304)
at
org.apache.felix.cm.impl.CaseInsensitiveDictionary.<init>(CaseInsensitiveDictionary.java:85)
at
org.apache.felix.cm.impl.ConfigurationImpl.update(ConfigurationImpl.java:373)
at
org.apache.felix.cm.impl.ConfigurationAdapter.update(ConfigurationAdapter.java:131)
at
org.jbehave.osgi.core.components.AbstractExtenderComponent.createFactoryConfigurationForExtendeeWithOneItem(AbstractExtenderComponent.java:174)
at
org.jbehave.osgi.core.components.extenders.StoryRunnerServiceExtenderComponent.registerStoryRunnerService(StoryRunnerServiceExtenderComponent.java:136)
at
org.jbehave.osgi.core.components.extenders.StoryRunnerServiceExtenderComponent.processEmbedderManifestHeaderClass(StoryRunnerServiceExtenderComponent.java:120)
at
org.jbehave.osgi.core.components.extenders.StoryRunnerServiceExtenderComponent.onExtensionAddition(StoryRunnerServiceExtenderComponent.java:54)
at
org.jbehave.osgi.core.components.DefaultExtensionTracker.addingBundle(DefaultExtensionTracker.java:46)
at
org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:467)
at
org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:414)
at
org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
at
org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:443)
at
org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:868)
at
org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:789)
at
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:514)
at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2092)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1291)
at
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)
at java.lang.Thread.run(Thread.java:744)
there is no way I
the interesting thing is that