BIRTjava.lang.NoClassDefFoundError: org/eclipse/jetty/util/Decorator
Asked Answered
C

3

5

I installed 64-bit Oxygen.2 and installed BIRT Framework through 'Update Software'.
When trying to render reports (to any format) from BIRT's GUI, I get the following error:

java.lang.NoClassDefFoundError: org/eclipse/jetty/util/Decorator
at org.eclipse.birt.report.viewer.utilities.ViewerWebApp.start(ViewerWebApp.java:40)
at org.eclipse.birt.report.viewer.utilities.AppServerWrapper.startJettyServer(AppServerWrapper.java:256)
at org.eclipse.birt.report.viewer.utilities.AppServerWrapper.start(AppServerWrapper.java:155)
at org.eclipse.birt.report.viewer.utilities.WebappAccessor.start(WebappAccessor.java:72)
at org.eclipse.birt.report.viewer.utilities.WebViewer.startWebApp(WebViewer.java:827)
at org.eclipse.birt.report.viewer.utilities.WebViewer.display(WebViewer.java:1078)
at org.eclipse.birt.report.viewer.utilities.WebViewer.display(WebViewer.java:1073)
at org.eclipse.birt.report.designer.ui.actions.PreviewSupport.preview(PreviewSupport.java:402)
at org.eclipse.birt.report.designer.ui.actions.PreviewSupport$3.widgetSelected(PreviewSupport.java:245)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:249)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4428)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4238)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3817)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1150)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1039)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
at org.eclipse.equinox.launcher.Main.run(Main.java:1499)<br>
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.Decorator cannot be found by org.eclipse.jetty.servlet_9.4.5.v20170502**
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 36 more

Anyone knows how to solve this problem?

Caffrey answered 8/2, 2018 at 6:54 Comment(2)
org.eclipse.jetty.util.Decorator is part of jetty-util-<version>.jar. why is it attempting to find it in jetty-servlet-<version>.jar?Riddance
@JoakimErdfelt, you make a good point. I actually have no idea why it is trying to find it in jetty-servlet-<>.jar I suppose whoever coded it, they put a wrong reference. Do you know by any chance if it is possible to change to the right pointer without much re-compiling etc. are these references coded and then compiled or are they kept in some external .xml file?Caffrey
G
10

Updated 06/23/19 - Just added instructions for Eclipse Photon

https://bugs.eclipse.org/bugs/show_bug.cgi?id=517662#c29

Update 04/04/18 - there is a workaround reported in first bug bellow that solves the problem. Copy the plugin files attached to the bug to the "dropins" folder of the Eclipse install and restart. It worked for me.

https://bugs.eclipse.org/bugs/show_bug.cgi?id=517662

Gawk answered 21/3, 2018 at 21:6 Comment(6)
didn't worked for me. I added all the jars in dropin folder. nothing happend. Any reason why?Gorgon
What version are you using? The jars provided at the bug 517662 work only for Oxygen.Gawk
Does the above proposed solution work? I tried steps above and no success... @NeimarVolpini, do you mind giving step by step instructions?Caffrey
@JavaFan, which version of BIRT are you trying?Gawk
@NeimarVolpini, I am using Eclipse 2019-03 and the BIRT 4.7.0v201706222054 I tried Neon3: worked I tried birt-all-in-one (as suggested in one of the posts): worked. But I would like to solve the bug so that I can keep on using the most recent version of Eclipse.Caffrey
@JavaFan, please check comment #29 at bugs.eclipse.org/bugs/show_bug.cgi?id=517662#c29Gawk
S
2

It appears that the integration with the installer is not yet ready.

Currently (BIRT 4.8.0), the easiest solution is to download the all-in-one option from https://download.eclipse.org/birt/downloads/

At the time of writing, this distribution includes Eclipse Photon and has all the plugins needed to render reports.

If you must use Oxygen, there are links to older releases at https://download.eclipse.org/birt/downloads/build_list.php. I only have tested 4.8.0 so I don't know which of the older releases are working fine.

Semaphore answered 4/4, 2019 at 13:17 Comment(0)
H
0

I am experiencing this error with Eclipse 4.11 as installed from the eclipse.org 'Eclipse for Java and Report Developers download link'. Confusingly this version of Eclipse seems to ship with version 4.7.0 of BIRT which is several years old (latest is 4.8.0).

The BIRT page linked by Krauss above has a link to an 'all-in-one' download but it is Eclipse Neon (4.6) with BIRT 4.6.0! However the good news is this bug is not present in this version, for me at least.

I'm thoroughly confused by the whole situation

TL;DR download and use this old version:

https://www.eclipse.org/downloads/packages/release/neon/r/eclipse-ide-java-and-report-developers

Hartwell answered 30/4, 2019 at 12:55 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.