J'ai créé une distribution maven en utilisant karaf-maven-plugin.org.apache.aries.transaction.blueprint/1.1.1 impossible d'obtenir javax.transaction.TransactionManager
J'ai créé projet Maven en utilisant
mvn archetype:generate -DarchetypeGroupId=org.apache.karaf.archetypes -DarchetypeArtifactId=karaf-assembly-archetype -DarchetypeVersion=4.1.0
j'ai ajouté des fonctionnalités suivantes:
<bootFeatures>
<feature>standard</feature>
<feature>jpa/2.5.0</feature>
<feature>transaction-api/1.2.0</feature>
<feature>transaction</feature>
<feature>eclipselink</feature>
<feature>pax-jdbc-config</feature>
<feature>pax-jdbc-postgresql</feature>
</bootFeatures>
Lorsque je télécharge karaf 4.1.0 la distribution à partir du site Apache, et installer des fonctionnalités en utilisant la fonction : installer, tout fonctionne bien, cependant, dans la distribution construite par le plugin, je reçois l'erreur:
Unable to start blueprint container for bundle org.apache.aries.transaction.blueprint/1.1.1 due to unresolved dependencies [(objectClass=javax.transaction.TransactionManager)] java.util.concurrent.TimeoutException at org.apache.aries.blueprint.container.BlueprintContainerImpl$1.run(BlueprintContainerImpl.java:371) [15:org.apache.aries.blueprint.core:1.7.1] at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:48) [15:org.apache.aries.blueprint.core:1.7.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]
2017-03-22T11:03:51,401 | ERROR | Blueprint Extender: 1 | BlueprintContainerImpl | 15 - org.apache.aries.blueprint.core - 1.7.1 | Unable to start blueprint container for bundle org.apache.aries.transaction.blueprint/2.1.0 due to unresolved dependencies [(objectClass=javax.transaction.TransactionManager)] java.util.concurrent.TimeoutException at org.apache.aries.blueprint.container.BlueprintContainerImpl$1.run(BlueprintContainerImpl.java:371) [15:org.apache.aries.blueprint.core:1.7.1] at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:48) [15:org.apache.aries.blueprint.core:1.7.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]
que j'ai trouvé le service dans le registre OSGi dans la console Web:
Service 266 - [org.apache.aries.transaction.AriesTransactionManager, javax.transaction.TransactionManager, javax.transaction.TransactionSynchronizationRegistry, javax.transaction.UserTransaction, org.apache.geronimo.transaction.manager.RecoverableTransactionManager] (pid: n/a)
from Bundle 143 - Apache Aries Transaction Manager (org.apache.aries.transaction.manager), version 1.3.2
service.bundleid: 143
service.scope: singleton
Qu'est-ce qui ne va pas ici? Est-ce que le plugin maven fait quelque chose de mal, ou le problème est que ce plugin utilise une version instable des artefacts?