Bug 1264565 - Integration pack: kie-camel uses inconsistent versions of various CXF artifacts
Summary: Integration pack: kie-camel uses inconsistent versions of various CXF artifacts
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: JBoss BPMS Platform 6
Classification: Retired
Component: Maven Repository
Version: 6.1.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ER1
: 6.3.0
Assignee: Ant Stephenson
QA Contact: Jiri Petrlik
URL:
Whiteboard:
Depends On: 1322438
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-09-18 20:11 UTC by Jiri Petrlik
Modified: 2016-04-19 18:24 UTC (History)
7 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2016-04-19 18:24:46 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Dependency tree (6.74 KB, text/plain)
2015-09-18 20:11 UTC, Jiri Petrlik
no flags Details
Maven pom.xml (9.94 KB, text/plain)
2016-04-01 10:29 UTC, Jiri Petrlik
no flags Details

Description Jiri Petrlik 2015-09-18 20:11:45 UTC
Created attachment 1075042 [details]
Dependency tree

Description of problem:
Component kie-camel uses inconsistent versions of CXF artifacts. There is a dependency tree in the attachment.

Version-Release number of selected component (if applicable):
Integration pack build - intpkg-1.0.0.redhat-620147 (http://dev138.mw.lab.eng.bos.redhat.com/candidate/intpkg-1.0.0.redhat-620147/)

Comment 2 Marek Winkler 2015-09-18 23:00:49 UTC
To illustrate the problem, please have a look at the following excerpt from the dependency:tree output:

[INFO] |  +- org.apache.cxf:cxf-core:jar:3.0.4:compile
[INFO] |  +- org.apache.cxf:cxf-rt-frontend-jaxws:jar:2.7.14:compile
[INFO] |  |  +- org.apache.cxf:cxf-api:jar:2.7.14:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-core:jar:2.7.11.redhat-3:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-bindings-soap:jar:2.7.14:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-bindings-xml:jar:2.7.11.redhat-3:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-frontend-simple:jar:2.7.11.redhat-3:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-transports-http:jar:2.7.14:compile
[INFO] |  |  \- org.apache.cxf:cxf-rt-ws-addr:jar:2.7.11.redhat-3:compile
[INFO] |  |     \- org.apache.cxf:cxf-rt-ws-policy:jar:2.7.11.redhat-3:compile
[INFO] |  +- org.apache.cxf:cxf-rt-frontend-jaxrs:jar:2.7.14:compile
[INFO] |  +- org.apache.cxf:cxf-rt-transports-http-jetty:jar:2.7.14:compile
...

There are 3 different versions of CXF artifacts. We would expect that the Integration Pack dependency management unifies CXF versions (not sure if that is possible until EAP and Fuse align CXF versions, but the first step could be to make kie-camel use only one CXF version).

Workaround for this problem might be to import CXF BOM, or to define <dependencyManagement> for CXF components, in user's pom.xml.

Comment 5 Ryan Zhang 2015-09-21 07:37:07 UTC
(In reply to Marek Winkler from comment #2)
> To illustrate the problem, please have a look at the following excerpt from
> the dependency:tree output:
> 
> [INFO] |  +- org.apache.cxf:cxf-core:jar:3.0.4:compile
> [INFO] |  +- org.apache.cxf:cxf-rt-frontend-jaxws:jar:2.7.14:compile
> [INFO] |  |  +- org.apache.cxf:cxf-api:jar:2.7.14:compile
> [INFO] |  |  +- org.apache.cxf:cxf-rt-core:jar:2.7.11.redhat-3:compile
> [INFO] |  |  +- org.apache.cxf:cxf-rt-bindings-soap:jar:2.7.14:compile
> [INFO] |  |  +-
> org.apache.cxf:cxf-rt-bindings-xml:jar:2.7.11.redhat-3:compile
> [INFO] |  |  +-
> org.apache.cxf:cxf-rt-frontend-simple:jar:2.7.11.redhat-3:compile
> [INFO] |  |  +- org.apache.cxf:cxf-rt-transports-http:jar:2.7.14:compile
> [INFO] |  |  \- org.apache.cxf:cxf-rt-ws-addr:jar:2.7.11.redhat-3:compile
> [INFO] |  |     \-
> org.apache.cxf:cxf-rt-ws-policy:jar:2.7.11.redhat-3:compile
> [INFO] |  +- org.apache.cxf:cxf-rt-frontend-jaxrs:jar:2.7.14:compile
> [INFO] |  +- org.apache.cxf:cxf-rt-transports-http-jetty:jar:2.7.14:compile
> ...
> 
> There are 3 different versions of CXF artifacts. We would expect that the
> Integration Pack dependency management unifies CXF versions (not sure if
> that is possible until EAP and Fuse align CXF versions, but the first step
> could be to make kie-camel use only one CXF version).
> 
> Workaround for this problem might be to import CXF BOM, or to define
> <dependencyManagement> for CXF components, in user's pom.xml.

Hi, Marek
would the kie-camel dependency tree show different cxf version if the testcase haven't import bxms bom?
I think fuse-integration should only point to 2.7.14 cxf since it is defined in fuse-integration project pom file.

Comment 7 Jiri Petrlik 2015-09-21 09:13:45 UTC
> 
> Hi, Marek
> would the kie-camel dependency tree show different cxf version if the
> testcase haven't import bxms bom?
> I think fuse-integration should only point to 2.7.14 cxf since it is defined
> in fuse-integration project pom file.

Hello Ryan,
I get the same problem with three versions of cxf component using only the integration pack bom (org.jboss.integration.fuse.fuse-integration-project). Bellow is piece of my pom.xml. In the dependency managment I have only integration pack bom.

<dependencyManagement>
        <dependencies>
          <dependency>
            <groupId>org.jboss.integration.fuse</groupId>
            <artifactId>fuse-integration-project</artifactId>
            <version>${integration.pack.version}</version>
            <type>pom</type>
            <scope>import</scope>
          </dependency>

          <dependency>
            <groupId>org.jboss.integration.fuse</groupId>
            <artifactId>jbpm-workitems-camel</artifactId>
            <version>${integration.pack.version}</version>
          </dependency>
        </dependencies>
</dependencyManagement>

<dependencies>
        <!-- Camel specific artifacts -->
        <dependency>
          <groupId>org.jboss.integration.fuse</groupId>
          <artifactId>karaf-features</artifactId>
          <type>xml</type>
          <classifier>features</classifier>
        </dependency>

        <dependency>
          <groupId>org.jboss.integration.fuse</groupId>
          <artifactId>kie-camel</artifactId>
        </dependency>
        <dependency>
          <groupId>org.jboss.integration.fuse</groupId>
          <artifactId>jbpm-workitems-camel</artifactId>
        </dependency>
</dependencies>

Comment 8 Ryan Zhang 2016-02-25 10:42:38 UTC
Kie-camel use various cxf artifacts should already be fixed in
https://github.com/jboss-integration/fuse-bxms-integ/commit/deb1747a3841ba6b8d6be5159004dd20aae1b564

However for other parts inside fuse-bxms-integration, there still existed inconsistent cxf version which is also reported also: https://issues.jboss.org/browse/ENTESB-4719
It might require David to fix it in future ie, to align fuse artifact to eap boms.

I think this ticket is fixed since we get rid of the inconsistency cxf version for kie-camel already.

Comment 9 Ryan Zhang 2016-02-25 10:44:41 UTC
This same commit should already be merged to 1.0.x , 1.1.x,1.2.x,  1.3.x and master branch also.

Comment 10 Ryan Zhang 2016-03-02 09:09:59 UTC
I shouldn't have moved BZ[1] to QA since we won't build integration pack for DR2.
I would move the status back to MODIFIED.
Sorry for confusion.

Comment 11 Ryan Zhang 2016-03-16 08:43:41 UTC
the IntPack 1.4 based on DR2 is availabe at:
http://download.eng.pnq.redhat.com/devel/candidates/INTPACK/INTPACK-1.4.0-redhat-001/

Comment 12 Jiri Petrlik 2016-04-01 10:26:55 UTC
There are still two different versions of CXF. The most of CXF artifacts are in version "2.7.18.redhat-1", but the "org.apache.cxf:cxf-core" is in version "3.0.4.redhat-621084". See part of dependency tree, which is attached bellow. This dependecny tree was obtained when using BxMS bom ("jboss-brms-bpmsuite-platform-bom") and Integration pack bom ("fuse-integration-bom"). In the attachment, there is example of pom.xml which was used to obtain this dependency tree (mvn dependency:tree -Pbxms-product,bxms-integration-pack).

[INFO] |  +- org.apache.cxf:cxf-api:jar:2.7.18.redhat-1:compile
[INFO] |  |  \- org.codehaus.woodstox:woodstox-core-asl:jar:4.2.0.redhat-4:compile
[INFO] |  |     \- org.codehaus.woodstox:stax2-api:jar:3.1.3:compile
[INFO] |  +- org.apache.cxf:cxf-rt-frontend-jaxws:jar:2.7.18.redhat-1:compile
[INFO] |  |  +- xml-resolver:xml-resolver:jar:1.2.0.redhat-10:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-core:jar:2.7.18.redhat-1:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-bindings-soap:jar:2.7.18.redhat-1:compile
[INFO] |  |  +- org.apache.cxf:cxf-rt-bindings-xml:jar:2.7.18.redhat-1:compile
[INFO] |  |  \- org.apache.cxf:cxf-rt-ws-addr:jar:2.7.18.redhat-1:compile
[INFO] |  |     \- org.apache.cxf:cxf-rt-ws-policy:jar:2.7.18.redhat-1:compile
[INFO] |  +- org.apache.cxf:cxf-rt-databinding-jaxb:jar:2.7.18.redhat-1:compile
[INFO] |  |  \- com.sun.xml.bind:jaxb-xjc:jar:2.2.11:compile
[INFO] |  +- com.sun.xml.bind:jaxb-core:jar:2.2.11:compile
[INFO] |  +- org.apache.cxf:cxf-rt-transports-http:jar:2.7.18.redhat-1:compile
[INFO] |  +- wsdl4j:wsdl4j:jar:1.6.3.redhat-1:compile
.....
[INFO] +- org.jboss.integration.fuse:kie-camel:jar:1.4.0.redhat-001:compile
[INFO] |  +- org.apache.camel:camel-core:jar:2.16.2:compile
[INFO] |  +- org.apache.camel:camel-jaxb:jar:2.16.2:compile
[INFO] |  +- org.apache.camel:camel-spring:jar:2.16.2:compile
[INFO] |  +- org.apache.camel:camel-cxf:jar:2.16.2:compile
[INFO] |  |  +- org.apache.camel:camel-cxf-transport:jar:2.16.2:compile
[INFO] |  |  \- org.apache.cxf:cxf-rt-rs-security-oauth:jar:2.7.18.redhat-1:compile
[INFO] |  |     \- net.oauth.core:oauth-provider:jar:20100527:compile
[INFO] |  |        \- net.oauth.core:oauth:jar:20100527:compile
[INFO] |  +- org.apache.camel:camel-xstream:jar:2.16.2:runtime
[INFO] |  |  +- stax:stax-api:jar:1.0.1:compile
[INFO] |  |  \- org.codehaus.jettison:jettison:jar:1.3.1.redhat-4:runtime
[INFO] |  +- org.apache.cxf:cxf-core:jar:3.0.4.redhat-621084:compile
[INFO] |  +- org.apache.cxf:cxf-rt-frontend-jaxrs:jar:2.7.18.redhat-1:compile

Comment 13 Jiri Petrlik 2016-04-01 10:29:30 UTC
Created attachment 1142504 [details]
Maven pom.xml

Maven pom.xml, which can be used to generate dependency tree.

Comment 17 Rajesh Rajasekaran 2016-04-19 18:24:46 UTC
Agree with Petr and Ryan's comment. Closing as Won't Fix. If the two different versions present in the maven repository introduces any run-time issues, QE can file a new bug.


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