Web console needs to be able to use service bundles like obr installed after it
-------------------------------------------------------------------------------
Key: FELIX-2216
URL: https://issues.apache.org/jira/browse/FELIX-2216
Project: Felix
Issue Type: Bug
Components: Web Console
Affects Versions: webconsole-2.0.6
Environment: generic
Reporter: Sahoo
Fix For: webconsole-3.0.0
When I started web console, I didn't have any obr service bundle in my system.
Since obr is an optional dependency, webconsole started and when I navigated to
obr tab, it printed a nice message stating:
"RepositoryAdmin Service not available." Then I installed and started obr
bundle. Upon refreshing the obr page in web console, I got:
java.lang.NoClassDefFoundError: org/osgi/service/obr/RepositoryAdmin
at
org.apache.felix.webconsole.internal.obr.BundleRepositoryRender.getRepositoryAdmin(BundleRepositoryRender.java:434)
at
org.apache.felix.webconsole.internal.obr.BundleRepositoryRender.renderContent(BundleRepositoryRender.java:109)
at
org.apache.felix.webconsole.AbstractWebConsolePlugin.doGet(AbstractWebConsolePlugin.java:116)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at
org.apache.felix.webconsole.internal.servlet.OsgiManager.service(OsgiManager.java:325)
When I refreshed web console bundle, it started working.
Looking at the code, I fail to understand why I did not getting NCDFE when I
navigated to that tab for the first time. Any explanation for this?
I think if web console had a dynamic dependency on org.osgi.service.obr, it
could have been avoided. So, add something like:
DynamicImport-Package: org.osgi.service.obr
To make it work, we may also have to pass true while opening the ServiceTracker
in BaseWebConsolePlugin.getService and have appropriate checks to deal with
possible ClassCastException.
This may be applicable to other optional dependencies as well.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.