You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Edward Welch (JIRA)" <ji...@apache.org> on 2015/12/23 16:47:46 UTC
[jira] [Created] (KARAF-4237) can't install transaction feature and
activemq-camel feature: Missing dependency
javax.transaction.TransactionManager
Edward Welch created KARAF-4237:
-----------------------------------
Summary: can't install transaction feature and activemq-camel feature: Missing dependency javax.transaction.TransactionManager
Key: KARAF-4237
URL: https://issues.apache.org/jira/browse/KARAF-4237
Project: Karaf
Issue Type: Bug
Affects Versions: 4.0.3
Environment: ubuntu 14.04, java 7 update 79 (also tried with java 8 update 45), karaf 3.0.3 camel 2.16.1, activemq 5.13.0
Reporter: Edward Welch
I found a little bit of a strange behavior, which I think points to a possible bug in the features dependency resolver?
Easiest way to reproduce, start with a vanilla 4.0.3
feature:repo-add activemq 5.13.0
feature:repo-add camel 2.16.1
feature:install transaction activemq-camel
bundle:diag
You will see both Apache Aries Transaction Blueprint bundles in Grace Period waiting for javax.transaction.TransactionManager
Pretty sure this is caused by some bad wiring on a bundle which activemq-camel brings in, here is that feature descriptor:
{code}
<feature name='camel-jms' version='${project.version}' resolver='(obr)' start-level='50'>
<feature version='${spring-version-range-karaf}'>spring</feature>
<bundle dependency='true'>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo-jta-spec-version}</bundle>
<bundle dependency='true'>mvn:commons-pool/commons-pool/${commons-pool-version}</bundle>
<bundle dependency='true'>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo-jms-spec-version}</bundle>
<feature version='${spring-version-range-karaf}'>spring-jms</feature>
<feature version='${project.version}'>camel-core</feature>
<bundle>mvn:org.apache.camel/camel-jms/${project.version}</bundle>
</feature>
{code}
I see the aries transaction bundles being wired to this bundle coming from the activemq-camel feature: mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo-jta-spec-version}
What's strange about this, that bundle is marked dependency="true" so I would think it wouldn't need to be installed at all.
Also peculiar, if you follow this install order:
feature:repo-add activemq 5.13.0
feature:repo-add camel 2.16.1
feature:install transaction
feature:install activemq-camel
bundle:diag
There is no issue, so the re-wiring/refresh of the transaction bundles never happens
Also when I originally posted this on the mailing list:
http://karaf.922171.n3.nabble.com/Missing-dependency-javax-transaction-TransactionManager-with-transaction-feature-and-activemq-camel-td4044354.html
Christian Schneider was unable to reproduce the issue, even though it occurs 100% of the time for me, so maybe there is something else in play here that I can't think of.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)