[ https://issues.apache.org/jira/browse/KARAF-4070?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Freeman Fang resolved KARAF-4070. --------------------------------- Resolution: Fixed Fix Version/s: 4.0.3 commit fix http://git-wip-us.apache.org/repos/asf/karaf/commit/738281eb > Unable to install deployed features for bundle > ---------------------------------------------- > > Key: KARAF-4070 > URL: https://issues.apache.org/jira/browse/KARAF-4070 > Project: Karaf > Issue Type: Bug > Components: karaf-feature > Affects Versions: 4.0.2 > Environment: Windows 7 64bit > Java JDK 1.7.0_76 and jdk 1.8.0_40 > Maven 3.3.3 > Reporter: Lukas Roedl > Assignee: Freeman Fang > Fix For: 4.0.3 > > > We start our application by deploying a feature file into the deploy folder > of Karaf. This "startup" feature file contains only a minimal feature > configuration: > {code:xml} > <?xml version="1.0" encoding="UTF-8" standalone="yes"?> > <features name="HOMER Core StartUp" > xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 > http://karaf.apache.org/xmlns/features/v1.3.0"> > > <repository>mvn:at.ac.ait.hbs.homer/at.ac.ait.hbs.homer.core.features.core/1.2.30-SNAPSHOT/xml/features</repository> > <feature name="homer-core-startup" description="HOMER Core StartUp" > version="1.2.30-SNAPSHOT" install="auto"> > <feature version="1.2.30-SNAPSHOT">homer-core</feature> > </feature> > </features> > {code} > When Karaf is started up (with the "clean" param) it results in an error but > all the necessary bundles seem to be loaded correctly: > {code} > org.apache.karaf.deployer.features[org.apache.karaf.deployer.features.FeatureDeploymentListener] > : Unable to install deployed features for bundle: homer-core-startup.xml - > 0.0.0 > java.lang.IllegalStateException: Invalid BundleContext. > at > org.apache.felix.framework.BundleContextImpl.checkValidity(BundleContextImpl.java:511) > at > org.apache.felix.framework.BundleContextImpl.getDataFile(BundleContextImpl.java:488) > at > org.apache.karaf.deployer.features.FeatureDeploymentListener.getPropertiesFile(FeatureDeploymentListener.java:152) > at > org.apache.karaf.deployer.features.FeatureDeploymentListener.saveProperties(FeatureDeploymentListener.java:140) > at > org.apache.karaf.deployer.features.FeatureDeploymentListener.bundleChanged(FeatureDeploymentListener.java:244) > at > org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:913) > at > org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:834) > at > org.apache.felix.framework.util.EventDispatcher.run(EventDispatcher.java:1143) > at > org.apache.felix.framework.util.EventDispatcher.access$000(EventDispatcher.java:55) > at > org.apache.felix.framework.util.EventDispatcher$1.run(EventDispatcher.java:102) > at java.lang.Thread.run(Thread.java:744) > {code} > When deleting the startup feature file and adding the feature to > {{featuresBoot}} it results in a different error but the bundles also seem to > be loaded correctly: > {code} > org.apache.karaf.features.core[org.apache.karaf.features.internal.service.BootFeaturesInstaller] > : Error installing boot features > org.apache.karaf.features.internal.util.MultiException: Error restarting > bundles > at > org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:844) > at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1079) > at > org.apache.karaf.features.internal.service.FeaturesServiceImpl$1.call(FeaturesServiceImpl.java:975) > at java.util.concurrent.FutureTask.run(FutureTask.java:262) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > Suppressed: org.osgi.framework.BundleException: Activator start error > in bundle org.apache.felix.metatype [55]. > at > org.apache.felix.framework.Felix.activateBundle(Felix.java:2270) > at > org.apache.felix.framework.Felix.startBundle(Felix.java:2138) > at > org.apache.felix.framework.BundleImpl.start(BundleImpl.java:977) > at > org.apache.felix.framework.BundleImpl.start(BundleImpl.java:964) > at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1189) > at > org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:836) > ... 6 more > Caused by: java.lang.IllegalStateException: Unknown protocol: mvn > at > org.apache.felix.framework.URLHandlersStreamHandlerProxy.toExternalForm(URLHandlersStreamHandlerProxy.java:482) > at > org.apache.felix.framework.URLHandlersStreamHandlerProxy.toExternalForm(URLHandlersStreamHandlerProxy.java:474) > at java.net.URL.toExternalForm(URL.java:921) > at java.net.URL.toString(URL.java:907) > at > java.lang.ClassLoader.defineClassSourceLocation(ClassLoader.java:676) > at java.lang.ClassLoader.defineClass(ClassLoader.java:797) > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2350) > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2134) > at > org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1526) > at > org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79) > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998) > at java.lang.ClassLoader.loadClass(ClassLoader.java:358) > at > org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1399) > at > org.apache.felix.framework.Felix.createBundleActivator(Felix.java:4471) > at > org.apache.felix.framework.Felix.activateBundle(Felix.java:2215) > ... 11 more > Suppressed: org.osgi.framework.BundleException: Activator start error > in bundle org.apache.karaf.services.eventadmin [77]. > at > org.apache.felix.framework.Felix.activateBundle(Felix.java:2270) > at > org.apache.felix.framework.Felix.startBundle(Felix.java:2138) > at > org.apache.felix.framework.BundleImpl.start(BundleImpl.java:977) > at > org.apache.felix.framework.BundleImpl.start(BundleImpl.java:964) > at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1189) > at > org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:836) > ... 6 more > Caused by: java.lang.IllegalStateException: Unknown protocol: mvn > at > org.apache.felix.framework.URLHandlersStreamHandlerProxy.toExternalForm(URLHandlersStreamHandlerProxy.java:482) > at > org.apache.felix.framework.URLHandlersStreamHandlerProxy.toExternalForm(URLHandlersStreamHandlerProxy.java:474) > at java.net.URL.toExternalForm(URL.java:921) > at java.net.URL.toString(URL.java:907) > at > java.lang.ClassLoader.defineClassSourceLocation(ClassLoader.java:676) > at java.lang.ClassLoader.defineClass(ClassLoader.java:797) > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2350) > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2134) > at > org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1526) > at > org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79) > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998) > at java.lang.ClassLoader.loadClass(ClassLoader.java:358) > at > org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1399) > at > org.apache.felix.framework.Felix.createBundleActivator(Felix.java:4471) > at > org.apache.felix.framework.Felix.activateBundle(Felix.java:2215) > ... 11 more > {code} > The mentioned feature can be found at > http://dev.arcsmed.at/nexus/content/repositories/homer.core-snapshots/ under > {{mvn:at.ac.ait.hbs.homer/at.ac.ait.hbs.homer.core.features.core/1.2.30-SNAPSHOT/xml/features}} > The custom distribution can be found under > http://dev.arcsmed.at/nexus/content/repositories/homer.core-snapshots/at/ac/ait/hbs/homer/at.ac.ait.hbs.homer.core.distribution.assembly/1.2.30-SNAPSHOT/at.ac.ait.hbs.homer.core.distribution.assembly-1.2.30-20151015.140016-3.zip -- This message was sent by Atlassian JIRA (v6.3.4#6332)