Ivo Karabashev created FELIX-5022:
-------------------------------------
Summary: org.apache.felix.http.bundle-3.0.0.jar contains classes
in org.eclipse.jetty.util package from two different versions
Key: FELIX-5022
URL: https://issues.apache.org/jira/browse/FELIX-5022
Project: Felix
Issue Type: Bug
Components: HTTP Service
Affects Versions: http.bundle-3.0.0
Reporter: Ivo Karabashev
http/bundle/pom.xml has as dependencies:
<artifactId>org.apache.felix.http.cometd</artifactId>
<version>2.3.2</version>
<artifactId>org.apache.felix.http.jetty</artifactId>
<version>3.0.0</version>
org.apache.felix.http.cometd however contains some of the same classes as
org.apache.felix.http.jetty (for example Container) but with old versions. So
they are included instead of the ones from org.apache.felix.http.jetty.
It can be seen also from the time stamps of the class files. Some are from
2014-12-05, others from 2013-10-31, even for inner classes of the same class.
244 2013-10-31 09:35 Container$1.class
327 2014-12-05 16:01 Container$InheritedListener.class
503 2013-10-31 09:35 Container$Listener.class
2575 2013-10-31 09:35 Container$Relationship.class
4875 2013-10-31 09:35 Container.class
1068 2014-12-05 16:01 ContainerLifeCycle$1.class
2050 2014-12-05 16:01 ContainerLifeCycle$Bean.class
1376 2014-12-05 16:01 ContainerLifeCycle$Managed.class
17140 2014-12-05 16:01 ContainerLifeCycle.class
This causes exception like:
java.lang.IncompatibleClassChangeError: Implementing class
org/eclipse/jetty/util/component/ContainerLifeCycle.class
because it expects org.eclipse.jetty.util.component.Container to be an
interface while it is a class in the jar.
Or java.lang.NoSuchMethodError:
org.eclipse.jetty.http.HttpGenerator.setJettyVersion(Ljava/lang/String;)V
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)