[
https://issues.apache.org/jira/browse/KARAF-4988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jean-Baptiste Onofré resolved KARAF-4988.
-----------------------------------------
Resolution: Fixed
> Refreshing a feature repository from webconsole fails
> -----------------------------------------------------
>
> Key: KARAF-4988
> URL: https://issues.apache.org/jira/browse/KARAF-4988
> Project: Karaf
> Issue Type: Bug
> Components: karaf-feature, webconsole
> Affects Versions: 4.0.7, 4.0.8
> Environment: Window 10
> Fresh, default install of karaf with webconsole feature loaded
> Reporter: Paul Mabus
> Assignee: Jean-Baptiste Onofré
> Priority: Minor
> Fix For: 4.2.0, 4.1.2
>
>
> Refreshing a features repository through the webconsole fails. The traceback
> in the karaf log indicates the feature repo is first removed, and this
> attempts to remove all the individual features - and fails when it encounters
> a feature that has not actually been installed.
> Fix: The correct behaviour should be to reload the repo definition and then
> check each feature to see if it is installed or not - and present that in the
> response to the webconsole.
> Enhance #1: Could also include a warning in the log where a feature installed
> from the old definition is no longer present in the new feature repo. User
> would then have to manually remove the bundles to get rid of the old feature.
> Enhance #2: Add an option to feature repository refresh to let user choose to
> either uninstall or leave in place, features that have been removed from the
> new repo definition.
> {noformat}
> 2017-02-15 12:53:59,027 | ERROR | qtp428960967-114 | FeaturesPlugin
> | 55 - org.apache.karaf.webconsole.features - 4.0.8 | Can't refresh
> features repository mvn:org.apache.karaf.features/standard/4.0.8/xml/features
> java.lang.IllegalArgumentException: Feature named 'eventadmin/4.0.8' is not
> installed
> at
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.uninstallFeatures(FeaturesServiceImpl.java:997)
> at
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.uninstallFeatures(FeaturesServiceImpl.java:872)
> at
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.removeRepository(FeaturesServiceImpl.java:528)
> at
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.removeRepository(FeaturesServiceImpl.java:491)
> at
> org.apache.karaf.webconsole.features.FeaturesPlugin.refreshRepository(FeaturesPlugin.java:227)
> at
> org.apache.karaf.webconsole.features.FeaturesPlugin.doPost(FeaturesPlugin.java:101)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
> at
> org.apache.felix.webconsole.internal.servlet.OsgiManager.service(OsgiManager.java:567)
> at
> org.apache.felix.webconsole.internal.servlet.KarafOsgiManager.doService(KarafOsgiManager.java:78)[54:org.apache.karaf.webconsole.console:4.0.8]
> at
> org.apache.felix.webconsole.internal.servlet.KarafOsgiManager$1.run(KarafOsgiManager.java:58)
> at java.security.AccessController.doPrivileged(Native Method)[:1.8.0_45]
> at
> org.apache.karaf.util.jaas.JaasHelper.doAs(JaasHelper.java:113)[54:org.apache.karaf.webconsole.console:4.0.8]
> at
> org.apache.felix.webconsole.internal.servlet.KarafOsgiManager.service(KarafOsgiManager.java:56)[54:org.apache.karaf.webconsole.console:4.0.8]
> at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)[75:org.eclipse.jetty.servlet:9.2.19.v20160908]
> at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)[75:org.eclipse.jetty.servlet:9.2.19.v20160908]
> at
> org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71)[92:org.ops4j.pax.web.pax-web-jetty:4.3.0]
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)[73:org.eclipse.jetty.security:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:287)[92:org.ops4j.pax.web.pax-web-jetty:4.3.0]
> at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)[75:org.eclipse.jetty.servlet:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)[92:org.ops4j.pax.web.pax-web-jetty:4.3.0]
> at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.Server.handle(Server.java:499)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)[74:org.eclipse.jetty.server:9.2.19.v20160908]
> at
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)[66:org.eclipse.jetty.io:9.2.19.v20160908]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)[77:org.eclipse.jetty.util:9.2.19.v20160908]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)[77:org.eclipse.jetty.util:9.2.19.v20160908]
> at java.lang.Thread.run(Thread.java:745)[:1.8.0_45]
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)