Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-dev] Eclipse BIRT and Jetty 9.4.3

Michele,

Just to clarify, my comment about the jetty-osgi-boot jar was only relevant for users installing from a p2 repository, like the guy who reported the problem here: https://www.eclipse.org/forums/index.php?t=msg&th=1085633&goto=1759742&

I tried to comment back on that forum, but couldn't get the interface to work in my browser. If you happen to be a member of the forum, could you kindly cutnpaste my comments into a post?

And also, reading your later post, glad to hear that you found some issue with signature files on the birt jars to explain things.

cheers
Jan

On 19 April 2017 at 18:40, Michele Rossi <michele.rossi@xxxxxxxxx> wrote:
hi Jan,

I have just tried again with BIRT v 4.6.0-20160607 and Jetty 9.4.3:

<dependency>
<groupId>org.eclipse.birt.runtime</groupId>
<artifactId>org.eclipse.birt.runtime</artifactId>
<version>4.6.0-20160607</version>
</dependency>

Looking at the Maven dependencies tree I could not find any reference to the  jetty-osgi-boot-9.2.13 jar that you mention below.

I tried to declare it as a dependency anyway but it did not work:

<dependency>
<artifactId>jetty-osgi-boot</artifactId>
<groupId>org.eclipse.jetty.osgi</groupId>
<version>${jetty.version}</version>
<scope>runtime</scope>
</dependency>



This is the stacktrace I get:

1 error
at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1028)
at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1054)
at com.iontrading.iod.guice.BootstrapContextListener.contextInitialized(BootstrapContextListener.java:76)
at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:876)
at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:532)
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:839)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:344)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:799)
at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
at org.eclipse.jetty.server.Server.start(Server.java:452)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.server.Server.doStart(Server.java:419)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at com.iontrading.iod.MainNew.main(MainNew.java:113)
Caused by: java.lang.NoClassDefFoundError: org/eclipse/birt/report/engine/api/IHTMLActionHandler
at com.iontrading.iod.webservices.reports.pdf.BirtReportGeneratorFactory.<init>(BirtReportGeneratorFactory.java:40)
at com.iontrading.iod.webservices.reports.pdf.BirtReportGeneratorFactory.<init>(BirtReportGeneratorFactory.java:32)
at com.iontrading.iod.guice.WebServicesModule.provideBirtReportGeneratorFactory(WebServicesModule.java:388)
at com.iontrading.iod.guice.WebServicesModule$$FastClassByGuice$$ad0c26b5.invoke(<generated>)
at com.google.inject.internal.ProviderMethod$FastClassProviderMethod.doProvision(ProviderMethod.java:264)
at com.google.inject.internal.ProviderMethod$Factory.provision(ProviderMethod.java:401)
at com.google.inject.internal.ProviderMethod$Factory.get(ProviderMethod.java:376)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
at com.google.inject.internal.ProviderMethod$Factory.provision(ProviderMethod.java:402)
at com.google.inject.internal.ProviderMethod$Factory.get(ProviderMethod.java:376)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:110)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268)
at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1019)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085)
at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1015)
... 20 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.birt.report.engine.api.IHTMLActionHandler
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 49 more


If I try to declare all BIRT transitive dependencies manually I get a similar error with the only difference being the name of the BIRT class that can not be loaded:

Caused by: java.lang.ClassNotFoundException: org.eclipse.birt.core.framework.PlatformConfig
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 49 more



I can see that this is caused by some weird classloading problem but unfortunately I don't have a clue on how to fix this nor I can invest an inordinate amount of time on this :(


Thanks for looking into it, very much appreciated.

Michele








On 19 April 2017 at 07:37, Jan Bartel <janb@xxxxxxxxxxx> wrote:
Joakim,

The Birt project has a hard dependency on jetty-9.2.13. Moreover, their p2 repository contains the jetty-osgi-boot-9.2.13 jar. If a user already has another version of the jetty-osgi-boot jar installed, Eclipse reports the conflict.

I don't see that there is anything we can do about it. Birt would need to upgrade to jetty-9.4, or at least be less restrictive in the versions of jetty-osgi-boot jar that they interwork with.

cheers
Jan

On 19 April 2017 at 00:52, Joakim Erdfelt <joakim@xxxxxxxxxxx> wrote:
Looks like the BIRT project is having conflicts with the Jetty 9.4.3 bundles.


Anything we should do to fix it?
Or are the 9.4.4 fixes for OSGi (soon to be released) going to help?

Joakim Erdfelt / joakim@xxxxxxxxxxx

_______________________________________________
jetty-dev mailing list
jetty-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-dev



--
Jan Bartel <janb@xxxxxxxxxxx>
www.webtide.com
Expert assistance from the creators of Jetty and CometD


_______________________________________________
jetty-dev mailing list
jetty-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-dev


_______________________________________________
jetty-dev mailing list
jetty-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-dev



--
Jan Bartel <janb@xxxxxxxxxxx>
www.webtide.com
Expert assistance from the creators of Jetty and CometD


Back to the top