You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Jean-Baptiste Onofré (Jira)" <ji...@apache.org> on 2020/04/06 09:47:00 UTC

[jira] [Updated] (KARAF-4988) Refreshing a feature repository from webconsole fails

     [ https://issues.apache.org/jira/browse/KARAF-4988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Baptiste Onofré updated KARAF-4988:
----------------------------------------
    Component/s:     (was: webconsole)

> 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
>    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.1.2, 4.2.0.M1
>
>
> 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
(v8.3.4#803005)