Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1427189 - Unresolved OSGi requirement breaks Eclipse help system
Summary: Unresolved OSGi requirement breaks Eclipse help system
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: jetty
Version: 26
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mikolaj Izdebski
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-02-27 14:42 UTC by Mat Booth
Modified: 2017-04-18 21:50 UTC (History)
7 users (show)

Fixed In Version: 9.4.3-3.v20170317
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-04-18 21:50:37 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Eclipse Project 512807 0 None None None 2017-02-28 12:10:32 UTC

Description Mat Booth 2017-02-27 14:42:49 UTC
Description of problem:

When using the integrated Eclipse help system, I see this error in the log:

!ENTRY org.eclipse.ui 4 0 2017-02-27 14:19:57.069
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.NoClassDefFoundError: org/eclipse/equinox/http/jetty/JettyConfigurator
        at org.eclipse.help.internal.server.JettyHelpServer$StartServerThread.run(JettyHelpServer.java:79)
Caused by: java.lang.ClassNotFoundException: org.eclipse.equinox.http.jetty.JettyConfigurator cannot be found by org.eclipse.help.base_4.1.2.v20170227-1124
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:461)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364)
        at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 1 more


Looking at the OSGi console, I see the following unresolved bundles:

g! ss -s INSTALLED
id      State       Bundle
97      INSTALLED   org.eclipse.equinox.http.jetty_3.3.0.v20170227-1124
143     INSTALLED   org.eclipse.jetty.http_9.4.2.v20170220
145     INSTALLED   org.eclipse.jetty.security_9.4.2.v20170220
146     INSTALLED   org.eclipse.jetty.server_9.4.2.v20170220
147     INSTALLED   org.eclipse.jetty.servlet_9.4.2.v20170220


And it seems to be caused by a missing capability:

g! diag 143
org.eclipse.jetty.http [143]
  Unresolved requirement: Require-Capability: osgi.extender; filter:="(osgi.extender=osgi.serviceloader.processor)"


This requirement seems to be new in:

jetty-http-9.4.2-1.v20170220.fc26.noarch


It doesn't look like there is a provider of this capability in Fedora. Any idea if this requirement can be made optional?

Comment 1 Mat Booth 2017-02-28 12:10:33 UTC
Adding link upstream bug report.

Comment 2 Fedora End Of Life 2017-02-28 12:27:34 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.

Comment 3 Michael Simacek 2017-02-28 15:41:05 UTC
The reference implementation for the capability is Apache Aries SPI Fly [1], which is not packaged in Fedora. I can package it if needed. But from the discussion at [2] it seems that eclipse's dependencies are too coarse grained. Can you check whether you can use the suggested solution?

[1] http://aries.apache.org/modules/spi-fly.html
[2] https://github.com/eclipse/jetty.project/issues/1290

Comment 4 Mat Booth 2017-03-01 13:05:19 UTC
(In reply to Michael Simacek from comment #3)
> The reference implementation for the capability is Apache Aries SPI Fly [1],
> which is not packaged in Fedora. I can package it if needed. But from the
> discussion at [2] it seems that eclipse's dependencies are too coarse
> grained. Can you check whether you can use the suggested solution?
> 
> [1] http://aries.apache.org/modules/spi-fly.html
> [2] https://github.com/eclipse/jetty.project/issues/1290

The discussion at [2] is a bit misleading because Eclipse does not make use of  jetty-http2, it only makes use of the regular jetty-http bundle as it always has done.

From my tests (as suggested by Tom Watson in the eclipse bug), this dependency can be made optional in the jetty-http bundle.

Comment 5 Michael Simacek 2017-03-07 16:37:45 UTC
Applying Matt's patch for now.

Comment 6 Fedora Update System 2017-03-07 16:38:13 UTC
jetty-9.4.2-2.v20170220.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-94ac9ce627

Comment 7 Fedora Update System 2017-03-10 23:19:58 UTC
jetty-9.4.2-2.v20170220.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-94ac9ce627

Comment 8 Fedora Update System 2017-04-01 16:50:47 UTC
jetty-9.4.2-2.v20170220.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.

Comment 9 Mat Booth 2017-04-05 11:27:31 UTC
It turns out this is not as fixed as I though it was as there is a second dependency on Apache Aries SPI Fly that should be optional :-(

I submitted another patch upstream here: https://github.com/eclipse/jetty.project/pull/1451/commits/1b9ec463a3b8b83d60359fe786c5be9b99b40591

I'd like to see this applied to F26 and F27, if possible.

Comment 10 Mikolaj Izdebski 2017-04-05 11:42:22 UTC
Fixed in jetty-9.4.3-2.v20170317

Comment 11 Fedora Update System 2017-04-05 13:31:41 UTC
jetty-9.4.3-2.v20170317.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-4a95e07013

Comment 12 Mikolaj Izdebski 2017-04-05 13:35:21 UTC
Buildroot override activated, https://bodhi.fedoraproject.org/overrides/jetty-9.4.3-2.v20170317.fc26

Comment 13 Fedora Update System 2017-04-05 21:56:05 UTC
jetty-9.4.3-2.v20170317.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-4a95e07013

Comment 14 Fedora Update System 2017-04-06 13:44:17 UTC
jetty-9.4.3-2.v20170317.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.

Comment 15 Mikolaj Izdebski 2017-04-18 21:50:37 UTC
I believe that this bug is fixed in jetty-9.4.3-3.v20170317,
which is available in Fedora 26, so I am closing this bug now.

The build containing the fix can be found at Koji:
http://koji.fedoraproject.org/koji/buildinfo?buildID=880501


Note You need to log in before you can comment on or make changes to this bug.