From fda2cb4a1ea46814b6c712617399ad7817c0269f Mon Sep 17 00:00:00 2001 From: Francois de Parscau Date: Sat, 31 Jan 2026 11:31:56 +0100 Subject: [PATCH] Migrate to Jakarta EE APIs - Updated javax.inject.Inject to jakarta.inject.Inject in all test files - Updated geronimo-connector from 3.1.5 to 4.0.0 in pom.xml - Updated AbstractIntegrationTest to use Jakarta dependencies: - jakarta.resource-api instead of geronimo-j2ee-connector_1.6_spec - jakarta.validation-api instead of geronimo-validation_1.0_spec - jakarta.interceptor-api instead of javax.interceptor-api - jakarta.inject-api instead of javax-inject servicemix bundle - jakarta.el-api instead of javax.el-api - jakarta.enterprise.cdi-api instead of javax.enterprise.cdi-api - jakarta.transaction-api instead of javax.transaction-api --- .github/workflows/transaction.yml | 2 +- transaction/transaction-blueprint/pom.xml | 16 +-- .../aries/transaction/ComponentTxData.java | 4 +- .../transaction/TransactionAttribute.java | 20 ++-- .../aries/transaction/TransactionToken.java | 2 +- .../TransactionalAnnotationAttributes.java | 2 +- .../aries/transaction/TxInterceptorImpl.java | 12 +- .../parsing/AnnotationProcessor.java | 2 +- .../parsing/TxNamespaceHandler.java | 2 +- .../OSGI-INF/blueprint/transaction.xml | 2 +- .../BaseNameSpaceHandlerSetup.java | 2 +- .../transaction/ComponentTxDataTest.java | 2 +- .../aries/transaction/InterceptorTest.java | 4 +- .../aries/transaction/TranStrategyTest.java | 18 +-- .../aries/transaction/pojo/AnnotatedPojo.java | 4 +- .../transaction/pojo/BadlyAnnotatedPojo1.java | 2 +- .../transaction/pojo/BadlyAnnotatedPojo2.java | 2 +- .../aries/transaction/pojo/BaseClass.java | 4 +- .../aries/transaction/pojo/ExtendedPojo.java | 4 +- .../aries/transaction/pojo/ExtendedPojo2.java | 4 +- .../aries/transaction/pojo/ExtendedPojo3.java | 4 +- .../transaction/pojo/OnRollbackPojo.java | 2 +- transaction/transaction-itests/pom.xml | 107 +++++++++--------- .../itests/AbstractIntegrationTest.java | 29 +++-- .../transaction/itests/RollbackOnTest.java | 2 +- transaction/transaction-jdbc/pom.xml | 29 +++-- .../jdbc/internal/AbstractMCFFactory.java | 2 +- .../internal/ConnectionManagerFactory.java | 4 +- .../jdbc/internal/DataSourceMCFFactory.java | 6 +- .../transaction/jdbc/internal/Recovery.java | 2 +- ...ingDelegatingManagedConnectionFactory.java | 16 +-- .../ValidatingGenericConnectionManager.java | 14 +-- .../jdbc/internal/XADataSourceMCFFactory.java | 10 +- transaction/transaction-jms/pom.xml | 40 +++---- .../jms/PooledConnectionFactory.java | 66 ++++++++++- .../RecoverablePooledConnectionFactory.java | 2 +- .../jms/internal/ConnectionPool.java | 10 +- .../jms/internal/GenericResourceManager.java | 12 +- .../jms/internal/PooledConnection.java | 56 ++++++--- .../jms/internal/PooledMessageConsumer.java | 8 +- .../jms/internal/PooledProducer.java | 60 +++++++++- .../jms/internal/PooledQueueSender.java | 39 ++++++- .../jms/internal/PooledSession.java | 85 ++++++++++---- .../internal/PooledSessionEventListener.java | 4 +- .../jms/internal/PooledTopicPublisher.java | 38 ++++++- .../internal/RecoverableConnectionPool.java | 8 +- .../jms/internal/XaConnectionPool.java | 22 ++-- .../internal/XaPooledConnectionFactory.java | 42 +++++-- transaction/transaction-manager/pom.xml | 36 ++++-- .../resource/spi/XATerminator.java | 6 +- .../transaction/AriesTransactionManager.java | 8 +- .../AriesPlatformTransactionManager.java | 6 +- .../internal/TransactionManagerService.java | 6 +- .../aries/transaction/internal/LogTest.java | 6 +- transaction/transaction-testbundle/pom.xml | 36 ++++-- .../test/impl/MandatoryTestBeanImpl.java | 2 +- .../test/impl/NeverTestBeanImpl.java | 4 +- .../test/impl/NotSupportedTestBeanImpl.java | 2 +- .../test/impl/RequiredTestBeanImpl.java | 6 +- .../test/impl/RequiresNewTestBeanImpl.java | 4 +- .../test/impl/RollbackOnBeanImpl.java | 4 +- .../test/impl/SupportsTestBeanImpl.java | 4 +- transaction/transaction-testds/pom.xml | 4 +- 63 files changed, 627 insertions(+), 336 deletions(-) rename transaction/transaction-manager/src/main/java/{javax => jakarta}/resource/spi/XATerminator.java (93%) diff --git a/.github/workflows/transaction.yml b/.github/workflows/transaction.yml index b3e8465def..a6bf0ef889 100644 --- a/.github/workflows/transaction.yml +++ b/.github/workflows/transaction.yml @@ -32,7 +32,7 @@ jobs: strategy: fail-fast: false matrix: - java: [ 8 ] + java: [ 17 ] os: [ ubuntu-latest ] name: JDK${{ matrix.java }} ${{ matrix.os }} runs-on: ${{ matrix.os }} diff --git a/transaction/transaction-blueprint/pom.xml b/transaction/transaction-blueprint/pom.xml index 697fca408d..55edbb0e4c 100644 --- a/transaction/transaction-blueprint/pom.xml +++ b/transaction/transaction-blueprint/pom.xml @@ -24,14 +24,14 @@ org.apache.aries parent - 2.1.1 + 3.0.0 ../../parent/pom.xml org.apache.aries.transaction org.apache.aries.transaction.blueprint bundle - 2.3.2-SNAPSHOT + 3.0.0-SNAPSHOT Apache Aries Transaction Blueprint @@ -52,12 +52,12 @@ 1.1.0 5.6.0 - 1.2 + 2.0.1 4.13.2 5.1.9 1.0.0 - 4.3.1 - 4.3.1 + 7.0.0 + 8.0.0 @@ -85,9 +85,9 @@ provided - javax.transaction - javax.transaction-api - ${javax.transaction-api.version} + jakarta.transaction + jakarta.transaction-api + ${jakarta.transaction-api.version} provided diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/ComponentTxData.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/ComponentTxData.java index d3d89e249c..c4c21c14d6 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/ComponentTxData.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/ComponentTxData.java @@ -23,8 +23,8 @@ import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionAttribute.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionAttribute.java index b7d342ed25..04d711f9d9 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionAttribute.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionAttribute.java @@ -18,16 +18,16 @@ */ package org.apache.aries.transaction; -import javax.transaction.HeuristicMixedException; -import javax.transaction.HeuristicRollbackException; -import javax.transaction.InvalidTransactionException; -import javax.transaction.NotSupportedException; -import javax.transaction.RollbackException; -import javax.transaction.Status; -import javax.transaction.SystemException; -import javax.transaction.Transaction; -import javax.transaction.TransactionManager; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.HeuristicMixedException; +import jakarta.transaction.HeuristicRollbackException; +import jakarta.transaction.InvalidTransactionException; +import jakarta.transaction.NotSupportedException; +import jakarta.transaction.RollbackException; +import jakarta.transaction.Status; +import jakarta.transaction.SystemException; +import jakarta.transaction.Transaction; +import jakarta.transaction.TransactionManager; +import jakarta.transaction.Transactional.TxType; /** * TODO This is copied from aries transaction. We could share this code diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionToken.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionToken.java index 4eaf1f8697..694c168bfb 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionToken.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionToken.java @@ -18,7 +18,7 @@ */ package org.apache.aries.transaction; -import javax.transaction.Transaction; +import jakarta.transaction.Transaction; import org.osgi.service.coordinator.Coordination; diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionalAnnotationAttributes.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionalAnnotationAttributes.java index 0c88e6c388..c4a2d92512 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionalAnnotationAttributes.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TransactionalAnnotationAttributes.java @@ -21,7 +21,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional.TxType; public class TransactionalAnnotationAttributes { diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java index 266807b4c8..cbaf605296 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java @@ -20,10 +20,10 @@ import java.lang.reflect.Method; import java.util.Optional; -import javax.transaction.RollbackException; -import javax.transaction.Status; -import javax.transaction.Transaction; -import javax.transaction.TransactionManager; +import jakarta.transaction.RollbackException; +import jakarta.transaction.Status; +import jakarta.transaction.Transaction; +import jakarta.transaction.TransactionManager; import org.apache.aries.blueprint.Interceptor; import org.osgi.service.blueprint.reflect.ComponentMetadata; @@ -75,7 +75,7 @@ public Object preCall(ComponentMetadata cm, Method m, Object... parameters) thro if (requiresNewCoordination) { String coordName = "txInterceptor." + m.getDeclaringClass().getName() + "." + m.getName(); Coordination coord = coordinator.begin(coordName , 0); - // @javax.transaction.Transactional is only part of 1.2 and even if it's about time that all previous + // @jakarta.transaction.Transactional is only part of 1.2 and even if it's about time that all previous // JTA versions should be forgotten, we can't rely on it... coord.getVariables().put(Transaction.class, txAttribute.name()); token.setCoordination(coord); @@ -139,7 +139,7 @@ public void postCallWithReturn(ComponentMetadata cm, Method m, Object returnType } catch (Exception e) { // We are throwing an exception, so we don't error it out LOGGER.debug("Exception while completing transaction.", e); - RollbackException rbe = new javax.transaction.RollbackException(); + RollbackException rbe = new RollbackException(); rbe.addSuppressed(e); throw rbe; } diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/AnnotationProcessor.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/AnnotationProcessor.java index 70ae7d8052..1f0c391aaa 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/AnnotationProcessor.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/AnnotationProcessor.java @@ -18,7 +18,7 @@ */ package org.apache.aries.transaction.parsing; -import javax.transaction.TransactionManager; +import jakarta.transaction.TransactionManager; import org.apache.aries.blueprint.BeanProcessor; import org.apache.aries.blueprint.ComponentDefinitionRegistry; diff --git a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/TxNamespaceHandler.java b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/TxNamespaceHandler.java index 2f555445aa..9411ebf376 100644 --- a/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/TxNamespaceHandler.java +++ b/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/parsing/TxNamespaceHandler.java @@ -23,7 +23,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Set; -import javax.transaction.TransactionManager; +import jakarta.transaction.TransactionManager; import org.apache.aries.blueprint.ComponentDefinitionRegistry; import org.apache.aries.blueprint.NamespaceHandler; diff --git a/transaction/transaction-blueprint/src/main/resources/OSGI-INF/blueprint/transaction.xml b/transaction/transaction-blueprint/src/main/resources/OSGI-INF/blueprint/transaction.xml index 6cc4a46b3e..d877f360ce 100644 --- a/transaction/transaction-blueprint/src/main/resources/OSGI-INF/blueprint/transaction.xml +++ b/transaction/transaction-blueprint/src/main/resources/OSGI-INF/blueprint/transaction.xml @@ -31,7 +31,7 @@ - + \ No newline at end of file diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/BaseNameSpaceHandlerSetup.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/BaseNameSpaceHandlerSetup.java index c7a51ed499..dbaf2fa919 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/BaseNameSpaceHandlerSetup.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/BaseNameSpaceHandlerSetup.java @@ -22,7 +22,7 @@ import java.net.URL; import java.util.Arrays; import java.util.Set; -import javax.transaction.TransactionManager; +import jakarta.transaction.TransactionManager; import org.apache.aries.blueprint.ComponentDefinitionRegistry; import org.apache.aries.blueprint.parser.ComponentDefinitionRegistryImpl; diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/ComponentTxDataTest.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/ComponentTxDataTest.java index 6e62b9093a..f81e89c98e 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/ComponentTxDataTest.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/ComponentTxDataTest.java @@ -26,7 +26,7 @@ import java.sql.BatchUpdateException; import java.sql.SQLDataException; import java.util.List; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional.TxType; import org.apache.aries.transaction.pojo.AnnotatedPojo; import org.apache.aries.transaction.pojo.BadlyAnnotatedPojo1; diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/InterceptorTest.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/InterceptorTest.java index ae3ccc6a5f..9574b77bcc 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/InterceptorTest.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/InterceptorTest.java @@ -22,8 +22,8 @@ import static org.easymock.EasyMock.replay; import java.io.IOException; -import javax.transaction.Transaction; -import javax.transaction.TransactionManager; +import jakarta.transaction.Transaction; +import jakarta.transaction.TransactionManager; import org.apache.aries.transaction.pojo.AnnotatedPojo; import org.easymock.EasyMock; diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/TranStrategyTest.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/TranStrategyTest.java index 32505b9bac..94a6a6c0f8 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/TranStrategyTest.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/TranStrategyTest.java @@ -29,15 +29,15 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Set; -import javax.transaction.HeuristicMixedException; -import javax.transaction.HeuristicRollbackException; -import javax.transaction.InvalidTransactionException; -import javax.transaction.NotSupportedException; -import javax.transaction.RollbackException; -import javax.transaction.Status; -import javax.transaction.SystemException; -import javax.transaction.Transaction; -import javax.transaction.TransactionManager; +import jakarta.transaction.HeuristicMixedException; +import jakarta.transaction.HeuristicRollbackException; +import jakarta.transaction.InvalidTransactionException; +import jakarta.transaction.NotSupportedException; +import jakarta.transaction.RollbackException; +import jakarta.transaction.Status; +import jakarta.transaction.SystemException; +import jakarta.transaction.Transaction; +import jakarta.transaction.TransactionManager; import org.easymock.EasyMock; import org.easymock.IMocksControl; diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/AnnotatedPojo.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/AnnotatedPojo.java index eda5bf92ee..394ae6afc2 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/AnnotatedPojo.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/AnnotatedPojo.java @@ -18,8 +18,8 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; @Transactional(TxType.REQUIRED) public class AnnotatedPojo { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo1.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo1.java index e7b3f44a4c..a0b4664753 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo1.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo1.java @@ -18,7 +18,7 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; public class BadlyAnnotatedPojo1 { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo2.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo2.java index a38dafaddb..c4146e15c0 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo2.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BadlyAnnotatedPojo2.java @@ -18,7 +18,7 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; public class BadlyAnnotatedPojo2 { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BaseClass.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BaseClass.java index 2d6debab76..238420677e 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BaseClass.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/BaseClass.java @@ -18,8 +18,8 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; @Transactional(value=TxType.REQUIRED) public class BaseClass { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo.java index cad7e6716e..3edc7dd3fc 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo.java @@ -18,8 +18,8 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; public class ExtendedPojo extends BaseClass { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo2.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo2.java index 744b6f8504..d29c480dea 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo2.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo2.java @@ -18,8 +18,8 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; @Transactional(value=TxType.MANDATORY) public class ExtendedPojo2 extends BaseClass { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo3.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo3.java index 3852350170..d60ba2885c 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo3.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/ExtendedPojo3.java @@ -18,8 +18,8 @@ */ package org.apache.aries.transaction.pojo; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; @Transactional(value=TxType.MANDATORY) public class ExtendedPojo3 extends BaseClass { diff --git a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/OnRollbackPojo.java b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/OnRollbackPojo.java index d0e9b6868c..af3158ca9e 100644 --- a/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/OnRollbackPojo.java +++ b/transaction/transaction-blueprint/src/test/java/org/apache/aries/transaction/pojo/OnRollbackPojo.java @@ -20,7 +20,7 @@ import java.sql.BatchUpdateException; import java.sql.SQLDataException; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; @Transactional(rollbackOn = SQLDataException.class) public class OnRollbackPojo { diff --git a/transaction/transaction-itests/pom.xml b/transaction/transaction-itests/pom.xml index 47f3275f55..d6e03c16a5 100644 --- a/transaction/transaction-itests/pom.xml +++ b/transaction/transaction-itests/pom.xml @@ -24,14 +24,14 @@ org.apache.aries parent - 2.0.0 + 3.0.0 ../../parent/pom.xml org.apache.aries.transaction org.apache.aries.transaction.itests Apache Aries Transaction Integration Tests - 1.0.1-SNAPSHOT + 2.0.0-SNAPSHOT scm:git:https://gitbox.apache.org/repos/asf/aries.git @@ -40,33 +40,37 @@ - 2.0.SP1 + 4.0.1 1.5.0 - 3.1.5 - 1.0 - 1.1 - 3.0.0 - 1.2.2 - 1.2 + 4.0.0 + 2.1.0 + 3.0.2 + 5.0.1 + 2.0.1 + 2.1.0 + 2.0.1 + 1 1.0.0 1.4.4 1.0.6 2.0.0-SNAPSHOT - 2.3.2-SNAPSHOT - 2.1.4-SNAPSHOT - 1.3.4-SNAPSHOT - 1.0.1-SNAPSHOT - 1.0.1-SNAPSHOT + 3.0.0-SNAPSHOT + 3.0.0-SNAPSHOT + 2.0.0-SNAPSHOT + 2.0.0-SNAPSHOT + 2.0.0-SNAPSHOT 1.1.3 1.9.26 1.0.2 + 2.2.14 1_3 - 3.23.100 - 6.0.0 - 1.8.3 - 4.13.5 - 2.2.11 - 2.1.1 + 3.24.0 + 8.0.0 + 1.9.0 + 4.14.0 + 2.3.1 + 4.0.1 + 6.4.0 2.6.17 1.7.7 @@ -113,14 +117,14 @@ test - org.apache.geronimo.specs - geronimo-j2ee-connector_1.6_spec - ${geronimo-j2ee-connector_1.6_spec.version} + jakarta.resource + jakarta.resource-api + ${jakarta.resource-api.version} - org.apache.geronimo.specs - geronimo-validation_1.0_spec - ${geronimo-validation_1.0_spec.version} + jakarta.validation + jakarta.validation-api + ${jakarta.validation-api.version} org.apache.geronimo.components @@ -128,31 +132,37 @@ ${geronimo-connector.version} - + - javax.transaction - javax.transaction-api - ${javax.transaction-api.version} + jakarta.transaction + jakarta.transaction-api + ${jakarta.transaction-api.version} - javax.interceptor - javax.interceptor-api - ${javax.interceptor-api.version} + jakarta.interceptor + jakarta.interceptor-api + ${jakarta.interceptor-api.version} - org.apache.servicemix.bundles - org.apache.servicemix.bundles.javax-inject - ${org.apache.servicemix.bundles.javax-inject.version} + jakarta.inject + jakarta.inject-api + ${jakarta.inject-api.version} - javax.el - javax.el-api - ${javax.el-api.version} + javax.inject + javax.inject + ${javax.inject.version} + test + + + jakarta.el + jakarta.el-api + ${jakarta.el-api.version} - javax.enterprise - cdi-api - ${javax.enterprise.cdi-api.version} + jakarta.enterprise + jakarta.enterprise.cdi-api + ${jakarta.enterprise.cdi-api.version} @@ -252,17 +262,10 @@ tinybundles ${pax-tinybundles.version} - - org.ops4j.pax.swissbox - pax-swissbox-framework - ${pax-swissbox.version} - test - - - org.ops4j.pax.swissbox - pax-swissbox-tracker - ${pax-swissbox.version} + org.apache.felix + org.apache.felix.scr + ${org.apache.felix.scr.version} test diff --git a/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/AbstractIntegrationTest.java b/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/AbstractIntegrationTest.java index d448f2fcad..b4f56a6bd6 100644 --- a/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/AbstractIntegrationTest.java +++ b/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/AbstractIntegrationTest.java @@ -20,16 +20,12 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; -import static org.ops4j.pax.exam.CoreOptions.composite; -import static org.ops4j.pax.exam.CoreOptions.frameworkProperty; -import static org.ops4j.pax.exam.CoreOptions.junitBundles; -import static org.ops4j.pax.exam.CoreOptions.mavenBundle; -import static org.ops4j.pax.exam.CoreOptions.systemProperty; +import static org.ops4j.pax.exam.CoreOptions.*; import java.sql.SQLException; import javax.inject.Inject; -import javax.transaction.RollbackException; -import javax.transaction.UserTransaction; +import jakarta.transaction.RollbackException; +import jakarta.transaction.UserTransaction; import org.apache.aries.transaction.test.Counter; import org.apache.aries.transaction.test.TestBean; @@ -69,8 +65,10 @@ public Option baseOptions() { public Option[] configuration() { return new Option[] { baseOptions(), + frameworkProperty("felix.resolver.debugcheck").value("true"), + frameworkProperty("felix.log.level").value("4"), frameworkProperty("org.osgi.framework.system.packages") - .value("javax.accessibility,javax.activation,javax.activity,javax.annotation,javax.annotation.processing,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.jws,javax.jws.soap,javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.rmi.ssl,javax.script,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.plaf.synth,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.tools,javax.xml,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.bind.util,javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.soap,javax.xml.stream,javax.xml.stream.events,javax.xml.stream.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stax,javax.xml.transform.stream,javax.xml.validation,javax.xml.ws,javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.ws.http,javax.xml.ws.soap,javax.xml.ws.spi,javax.xml.xpath,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.ServantLocatorPackage,org.omg.PortableServer.portable,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.dom.css,org.w3c.dom.events,org.w3c.dom.html,org.w3c.dom.ls,org.w3c.dom.ranges,org.w3c.dom.stylesheets,org.w3c.dom.traversal,org.w3c.dom.views,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers"), + .value("jakarta.inject,jakarta.inject.spi,jakarta.transaction,jakarta.transaction.xa,java.applet,java.awt,java.awt.color,java.awt.datatransfer,java.awt.dnd,java.awt.event,java.awt.font,java.awt.geom,java.awt.im,java.awt.im.spi,java.awt.image,java.awt.image.renderable,java.awt.print,java.beans,java.beans.beancontext,java.io,java.lang,java.lang.annotation,java.lang.constant,java.lang.instrument,java.lang.invoke,java.lang.management,java.lang.ref,java.lang.reflect,java.lang.runtime,java.math,java.net,java.net.http,java.nio,java.nio.channels,java.nio.channels.spi,java.nio.charset,java.nio.charset.spi,java.nio.file,java.nio.file.attribute,java.nio.file.spi,java.rmi,java.rmi.activation,java.rmi.dgc,java.rmi.registry,java.rmi.server,java.security,java.security.acl,java.security.cert,java.security.interfaces,java.security.spec,java.sql,java.text,java.text.spi,java.time,java.time.chrono,java.time.format,java.time.temporal,java.time.zone,java.util,java.util.concurrent,java.util.concurrent.atomic,java.util.concurrent.locks,java.util.function,java.util.jar,java.util.logging,java.util.prefs,java.util.random,java.util.regex,java.util.spi,java.util.stream,java.util.zip,javax.accessibility,javax.activation,javax.activity,javax.annotation,javax.annotation.processing,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,\\rjavax.imageio.stream,javax.jws,javax.jws.soap,javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.rmi.ssl,javax.script,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.plaf.synth,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.tools,javax.transaction.xa,javax.xml,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.bind.util,javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.soap,javax.xml.stream,javax.xml.stream.events,javax.xml.stream.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stax,javax.xml.transform.stream,javax.xml.validation,javax.xml.ws,javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.ws.http,javax.xml.ws.soap,javax.xml.ws.spi,javax.xml.xpath,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.portable,org.omg.CORBA.TypeCodePackage,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.portable,org.omg.PortableServer.ServantLocatorPackage,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.dom.css,org.w3c.dom.events,org.w3c.dom.html,org.w3c.dom.ls,org.w3c.dom.ranges,org.w3c.dom.stylesheets,org.w3c.dom.traversal,org.w3c.dom.views,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers"), systemProperty("org.apache.aries.proxy.weaving.enabled").value("none"), systemProperty("pax.exam.osgi.unresolved.fail").value("true"), @@ -78,8 +76,8 @@ public Option[] configuration() { mavenBundle("org.apache.felix", "org.apache.felix.configadmin").versionAsInProject(), mavenBundle("org.apache.felix", "org.apache.felix.coordinator").versionAsInProject(), - mavenBundle("org.apache.geronimo.specs", "geronimo-j2ee-connector_1.6_spec").versionAsInProject(), - mavenBundle("org.apache.geronimo.specs", "geronimo-validation_1.0_spec").versionAsInProject(), + mavenBundle("jakarta.resource", "jakarta.resource-api").versionAsInProject(), + mavenBundle("jakarta.validation", "jakarta.validation-api").versionAsInProject(), mavenBundle("org.apache.geronimo.components", "geronimo-connector").versionAsInProject(), mavenBundle("org.apache.derby", "derby").versionAsInProject(), @@ -101,11 +99,12 @@ public Option[] configuration() { private Option jta12Bundles() { return CoreOptions.composite( - mavenBundle("javax.interceptor", "javax.interceptor-api").versionAsInProject(), - mavenBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.javax-inject").versionAsInProject(), - mavenBundle("javax.el", "javax.el-api").versionAsInProject(), - mavenBundle("javax.enterprise", "cdi-api").versionAsInProject(), - mavenBundle("javax.transaction", "javax.transaction-api").versionAsInProject() + mavenBundle("jakarta.interceptor", "jakarta.interceptor-api").versionAsInProject(), + mavenBundle("jakarta.inject", "jakarta.inject-api").versionAsInProject(), + mavenBundle("jakarta.el", "jakarta.el-api").versionAsInProject(), + mavenBundle("jakarta.enterprise", "jakarta.enterprise.cdi-api").versionAsInProject(), + mavenBundle("jakarta.transaction", "jakarta.transaction-api").versionAsInProject(), + mavenBundle("jakarta.enterprise", "jakarta.enterprise.lang-model").versionAsInProject() ); } diff --git a/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/RollbackOnTest.java b/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/RollbackOnTest.java index 8dfe6a6bb6..7d6d6634ad 100644 --- a/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/RollbackOnTest.java +++ b/transaction/transaction-itests/src/test/java/org/apache/aries/transaction/itests/RollbackOnTest.java @@ -22,7 +22,7 @@ import java.sql.SQLException; import javax.inject.Inject; -import javax.transaction.Status; +import jakarta.transaction.Status; import org.apache.aries.transaction.test.RollbackOnBean; import org.apache.aries.transaction.test.TestBean; diff --git a/transaction/transaction-jdbc/pom.xml b/transaction/transaction-jdbc/pom.xml index c720665559..370b6fae9e 100644 --- a/transaction/transaction-jdbc/pom.xml +++ b/transaction/transaction-jdbc/pom.xml @@ -24,14 +24,14 @@ org.apache.aries parent - 2.0.1 + 3.0.0 ../../parent/pom.xml org.apache.aries.transaction org.apache.aries.transaction.jdbc Apache Aries Transaction Enlisting JDBC Datasource - 2.1.4-SNAPSHOT + 3.0.0-SNAPSHOT bundle @@ -46,8 +46,8 @@ org.osgi.service.blueprint.*;resolution:=optional, - org.apache.aries.transaction;version="[1.0,2)", - javax.resource.*;version="[1.6,3)", + org.apache.aries.transaction;version="[1.0,3)", + jakarta.resource.*;version="[2.0,3)", * @@ -68,15 +68,16 @@ -Xdoclint:none - 3.1.5 + 4.0.0 3.2.0 5.1.9 1.0.0 - 1.1.1 + 2.0.0-SNAPSHOT 1.1.3 - 4.3.1 - 4.3.1 - 1.8 + 8.0.0 + 7.0.0 + 2.1.0 + 2.0.2 4.30 @@ -97,6 +98,12 @@ ${osgi.core.version} provided + + jakarta.resource + jakarta.resource-api + ${jakarta.resource-api.version} + provided + org.osgi osgi.cmpn @@ -109,8 +116,8 @@ provided - org.tranql - tranql-connector + com.farmafene.j2ee + tranql-connector-jakarta ${tranql-connector.version} provided diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/AbstractMCFFactory.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/AbstractMCFFactory.java index 76ed26e7f3..64f8d2a836 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/AbstractMCFFactory.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/AbstractMCFFactory.java @@ -20,7 +20,7 @@ import java.util.ArrayList; import java.util.List; -import javax.resource.spi.ManagedConnectionFactory; +import jakarta.resource.spi.ManagedConnectionFactory; import javax.sql.CommonDataSource; import org.tranql.connector.AllExceptionsAreFatalSorter; diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ConnectionManagerFactory.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ConnectionManagerFactory.java index 534a42508a..f180ce3935 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ConnectionManagerFactory.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ConnectionManagerFactory.java @@ -18,8 +18,8 @@ */ package org.apache.aries.transaction.jdbc.internal; -import javax.resource.spi.ConnectionManager; -import javax.resource.spi.ManagedConnectionFactory; +import jakarta.resource.spi.ConnectionManager; +import jakarta.resource.spi.ManagedConnectionFactory; import org.apache.aries.transaction.AriesTransactionManager; import org.apache.geronimo.connector.outbound.GenericConnectionManager; diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/DataSourceMCFFactory.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/DataSourceMCFFactory.java index 9957367869..7b5c23b754 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/DataSourceMCFFactory.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/DataSourceMCFFactory.java @@ -20,9 +20,9 @@ import java.sql.Connection; import java.sql.SQLException; -import javax.resource.ResourceException; -import javax.resource.spi.ResourceAdapterInternalException; -import javax.resource.spi.TransactionSupport; +import jakarta.resource.ResourceException; +import jakarta.resource.spi.ResourceAdapterInternalException; +import jakarta.resource.spi.TransactionSupport; import javax.security.auth.Subject; import javax.sql.DataSource; diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/Recovery.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/Recovery.java index f375f29724..7af6473fde 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/Recovery.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/Recovery.java @@ -21,7 +21,7 @@ import java.io.IOException; import javax.sql.XAConnection; import javax.sql.XADataSource; -import javax.transaction.SystemException; +import jakarta.transaction.SystemException; import javax.transaction.xa.XAResource; import org.apache.geronimo.transaction.manager.NamedXAResource; diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingDelegatingManagedConnectionFactory.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingDelegatingManagedConnectionFactory.java index 4f18c26bad..b7d59ef57b 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingDelegatingManagedConnectionFactory.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingDelegatingManagedConnectionFactory.java @@ -23,14 +23,14 @@ import java.sql.SQLException; import java.util.HashSet; import java.util.Set; -import javax.resource.NotSupportedException; -import javax.resource.ResourceException; -import javax.resource.spi.ConnectionManager; -import javax.resource.spi.ConnectionRequestInfo; -import javax.resource.spi.ManagedConnection; -import javax.resource.spi.ManagedConnectionFactory; -import javax.resource.spi.TransactionSupport; -import javax.resource.spi.ValidatingManagedConnectionFactory; +import jakarta.resource.NotSupportedException; +import jakarta.resource.ResourceException; +import jakarta.resource.spi.ConnectionManager; +import jakarta.resource.spi.ConnectionRequestInfo; +import jakarta.resource.spi.ManagedConnection; +import jakarta.resource.spi.ManagedConnectionFactory; +import jakarta.resource.spi.TransactionSupport; +import jakarta.resource.spi.ValidatingManagedConnectionFactory; import javax.security.auth.Subject; import org.slf4j.Logger; diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingGenericConnectionManager.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingGenericConnectionManager.java index a25b20998e..1b46858bd0 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingGenericConnectionManager.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/ValidatingGenericConnectionManager.java @@ -25,10 +25,10 @@ import java.util.Timer; import java.util.TimerTask; import java.util.concurrent.locks.ReadWriteLock; -import javax.resource.ResourceException; -import javax.resource.spi.ManagedConnection; -import javax.resource.spi.ManagedConnectionFactory; -import javax.resource.spi.ValidatingManagedConnectionFactory; +import jakarta.resource.ResourceException; +import jakarta.resource.spi.ManagedConnection; +import jakarta.resource.spi.ManagedConnectionFactory; +import jakarta.resource.spi.ValidatingManagedConnectionFactory; import org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor; import org.apache.geronimo.connector.outbound.ConnectionInfo; @@ -90,7 +90,7 @@ public ValidatingGenericConnectionManager(TransactionSupport transactionSupport, if (current instanceof AbstractSinglePoolConnectionInterceptor) { foundPool = Reflections.get(current, "pool"); } else if (current instanceof MultiPoolConnectionInterceptor) { - log.warn("validation on stack {} not supported", stack); + log.warning("validation on stack {} " + stack + " not supported"); } this.pool = foundPool; @@ -145,7 +145,7 @@ public void run() { } else if (stack instanceof SinglePoolMatchAllConnectionInterceptor) { connections = (Map) pool; } else { - log.warn("stack {} currently not supported", stack); + log.warning("stack " + stack + " currently not supported"); return; } @@ -158,7 +158,7 @@ public void run() { } } } catch (ResourceException e) { - log.error(e.getMessage(), e); + log.log(java.util.logging.Level.SEVERE, e.getMessage(), e); } } finally { if (lock != null) { diff --git a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/XADataSourceMCFFactory.java b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/XADataSourceMCFFactory.java index c2d5d5b07a..a9463b3939 100644 --- a/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/XADataSourceMCFFactory.java +++ b/transaction/transaction-jdbc/src/main/java/org/apache/aries/transaction/jdbc/internal/XADataSourceMCFFactory.java @@ -19,11 +19,11 @@ package org.apache.aries.transaction.jdbc.internal; import java.sql.SQLException; -import javax.resource.ResourceException; -import javax.resource.spi.ConnectionRequestInfo; -import javax.resource.spi.ManagedConnection; -import javax.resource.spi.ResourceAdapterInternalException; -import javax.resource.spi.TransactionSupport; +import jakarta.resource.ResourceException; +import jakarta.resource.spi.ConnectionRequestInfo; +import jakarta.resource.spi.ManagedConnection; +import jakarta.resource.spi.ResourceAdapterInternalException; +import jakarta.resource.spi.TransactionSupport; import javax.security.auth.Subject; import javax.sql.XAConnection; import javax.sql.XADataSource; diff --git a/transaction/transaction-jms/pom.xml b/transaction/transaction-jms/pom.xml index 3d493f5037..d63fadfe3e 100644 --- a/transaction/transaction-jms/pom.xml +++ b/transaction/transaction-jms/pom.xml @@ -24,7 +24,7 @@ org.apache.aries parent - 2.0.0 + 3.0.0 ../../parent/pom.xml @@ -32,7 +32,7 @@ org.apache.aries.transaction.jms bundle Apache Aries JMS Pool - 2.0.1-SNAPSHOT + 3.0.0-SNAPSHOT scm:git:https://gitbox.apache.org/repos/asf/aries.git @@ -45,14 +45,14 @@ org.apache.aries.transaction.jms;version="2.0.0";-noimport:=true - javax.jms;version="[1.1,3)", + jakarta.jms;version="[1.1,3)", * org.apache.aries.transaction.jms.internal - osgi.service; effective:=active; filter:="(objectClass=javax.transaction.TransactionManager)" + osgi.service; effective:=active; filter:="(objectClass=jakarta.transaction.TransactionManager)" osg.service; effective:=active; objectClass=org.apache.aries.blueprint.NamespaceHandler; osgi.service.blueprint.namespace="http://aries.apache.org/xmlns/transaction-jms/2.0" @@ -63,12 +63,12 @@ 1.0.0 1.6 - 1.1.1 - 1.1.1 - 3.1.4 + 4.0.0 + 2.0.1 + 3.1.0 5.1.9 1.0.0 - 4.3.1 + 8.0.0 4.30 @@ -80,14 +80,20 @@ provided - org.apache.geronimo.specs - geronimo-jta_1.1_spec - ${geronimo-jta_1.1_spec.version} + jakarta.transaction + jakarta.transaction-api + ${jakarta.transaction-api.version} - org.apache.geronimo.specs - geronimo-jms_1.1_spec - ${geronimo-jms_1.1_spec.version} + org.apache.geronimo.components + geronimo-transaction + ${geronimo-transaction.version} + provided + + + jakarta.jms + jakarta.jms-api + ${jakarta.jms-api.version} commons-pool @@ -115,12 +121,6 @@ slf4j-simple test - - org.apache.geronimo.components - geronimo-transaction - ${geronimo-transaction.version} - provided - diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/PooledConnectionFactory.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/PooledConnectionFactory.java index 7028e67ce1..186b6d06b0 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/PooledConnectionFactory.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/PooledConnectionFactory.java @@ -17,11 +17,14 @@ package org.apache.aries.transaction.jms; import java.util.concurrent.atomic.AtomicBoolean; -import javax.jms.Connection; -import javax.jms.ConnectionFactory; -import javax.jms.JMSException; -import javax.jms.XAConnection; -import javax.jms.XAConnectionFactory; +import jakarta.jms.Connection; +import jakarta.jms.ConnectionFactory; +import jakarta.jms.JMSContext; +import jakarta.jms.JMSException; +import jakarta.jms.JMSRuntimeException; +import jakarta.jms.Session; +import jakarta.jms.XAConnection; +import jakarta.jms.XAConnectionFactory; import org.apache.aries.transaction.jms.internal.ConnectionKey; import org.apache.aries.transaction.jms.internal.ConnectionPool; @@ -253,6 +256,29 @@ protected Connection createConnection(ConnectionKey key) throws JMSException { } } + @Override + public JMSContext createContext() throws JMSRuntimeException { + return createContext(null, null, Session.AUTO_ACKNOWLEDGE); + } + + @Override + public JMSContext createContext(int sessionMode) throws JMSRuntimeException { + return createContext(null, null, sessionMode); + } + + @Override + public JMSContext createContext(String userName, String password, int sessionMode) throws JMSRuntimeException { + if (connectionFactory == null) { + throw new JMSRuntimeException("ConnectionFactory not set"); + } + return connectionFactory.createContext(userName, password, sessionMode); + } + + @Override + public JMSContext createContext(String userName, String password) throws JMSRuntimeException { + return createContext(userName, password, Session.AUTO_ACKNOWLEDGE); + } + public void start() { LOG.debug("Staring the PooledConnectionFactory: create on start = {}", isCreateConnectionOnStartup()); stopped.set(false); @@ -558,5 +584,35 @@ public XAConnection createXAConnection() throws JMSException { public XAConnection createXAConnection(String userName, String password) throws JMSException { return delegate.createXAConnection(userName, password); } + + @Override + public JMSContext createContext() throws JMSRuntimeException { + return delegate.createXAContext(); + } + + @Override + public JMSContext createContext(int sessionMode) throws JMSRuntimeException { + return delegate.createXAContext(); + } + + @Override + public JMSContext createContext(String userName, String password, int sessionMode) throws JMSRuntimeException { + return delegate.createXAContext(userName, password); + } + + @Override + public JMSContext createContext(String userName, String password) throws JMSRuntimeException { + return delegate.createXAContext(userName, password); + } + + @Override + public jakarta.jms.XAJMSContext createXAContext(String userName, String password) throws JMSRuntimeException { + return delegate.createXAContext(userName, password); + } + + @Override + public jakarta.jms.XAJMSContext createXAContext() throws JMSRuntimeException { + return delegate.createXAContext(); + } } } diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/RecoverablePooledConnectionFactory.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/RecoverablePooledConnectionFactory.java index 54cc13be6f..5ca7444e2a 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/RecoverablePooledConnectionFactory.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/RecoverablePooledConnectionFactory.java @@ -16,7 +16,7 @@ */ package org.apache.aries.transaction.jms; -import javax.jms.Connection; +import jakarta.jms.Connection; import org.apache.aries.transaction.jms.internal.ConnectionPool; import org.apache.aries.transaction.jms.internal.GenericResourceManager; diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/ConnectionPool.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/ConnectionPool.java index 10305d0963..4fed185b78 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/ConnectionPool.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/ConnectionPool.java @@ -19,10 +19,10 @@ import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.atomic.AtomicBoolean; -import javax.jms.Connection; -import javax.jms.IllegalStateException; -import javax.jms.JMSException; -import javax.jms.Session; +import jakarta.jms.Connection; +import jakarta.jms.IllegalStateException; +import jakarta.jms.JMSException; +import jakarta.jms.Session; import org.apache.commons.pool.KeyedPoolableObjectFactory; import org.apache.commons.pool.impl.GenericKeyedObjectPool; @@ -125,7 +125,7 @@ public Session createSession(boolean transacted, int ackMode) throws JMSExceptio try { session = sessionPool.borrowObject(key); } catch (Exception e) { - javax.jms.IllegalStateException illegalStateException = new IllegalStateException(e.toString()); + jakarta.jms.IllegalStateException illegalStateException = new IllegalStateException(e.toString()); illegalStateException.initCause(e); throw illegalStateException; } diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/GenericResourceManager.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/GenericResourceManager.java index 502fe40a21..b37e55dcd1 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/GenericResourceManager.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/GenericResourceManager.java @@ -17,12 +17,12 @@ package org.apache.aries.transaction.jms.internal; import java.io.IOException; -import javax.jms.ConnectionFactory; -import javax.jms.XAConnection; -import javax.jms.XAConnectionFactory; -import javax.jms.XASession; -import javax.transaction.SystemException; -import javax.transaction.TransactionManager; +import jakarta.jms.ConnectionFactory; +import jakarta.jms.XAConnection; +import jakarta.jms.XAConnectionFactory; +import jakarta.jms.XASession; +import jakarta.transaction.SystemException; +import jakarta.transaction.TransactionManager; import javax.transaction.xa.XAResource; import org.apache.geronimo.transaction.manager.NamedXAResource; diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledConnection.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledConnection.java index 07750a588e..6c45ae94ff 100755 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledConnection.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledConnection.java @@ -18,22 +18,22 @@ import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; -import javax.jms.Connection; -import javax.jms.ConnectionConsumer; -import javax.jms.ConnectionMetaData; -import javax.jms.Destination; -import javax.jms.ExceptionListener; -import javax.jms.JMSException; -import javax.jms.Queue; -import javax.jms.QueueConnection; -import javax.jms.QueueSession; -import javax.jms.ServerSessionPool; -import javax.jms.Session; -import javax.jms.TemporaryQueue; -import javax.jms.TemporaryTopic; -import javax.jms.Topic; -import javax.jms.TopicConnection; -import javax.jms.TopicSession; +import jakarta.jms.Connection; +import jakarta.jms.ConnectionConsumer; +import jakarta.jms.ConnectionMetaData; +import jakarta.jms.Destination; +import jakarta.jms.ExceptionListener; +import jakarta.jms.JMSException; +import jakarta.jms.Queue; +import jakarta.jms.QueueConnection; +import jakarta.jms.QueueSession; +import jakarta.jms.ServerSessionPool; +import jakarta.jms.Session; +import jakarta.jms.TemporaryQueue; +import jakarta.jms.TemporaryTopic; +import jakarta.jms.Topic; +import jakarta.jms.TopicConnection; +import jakarta.jms.TopicSession; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -175,6 +175,26 @@ public Session createSession(boolean transacted, int ackMode) throws JMSExceptio return result; } + @Override + public Session createSession() throws JMSException { + return createSession(true, Session.AUTO_ACKNOWLEDGE); + } + + @Override + public Session createSession(int sessionMode) throws JMSException { + return createSession(true, sessionMode); + } + + @Override + public ConnectionConsumer createSharedConnectionConsumer(Topic topic, String subscriptionName, String messageSelector, ServerSessionPool sessionPool, int maxMessages) throws JMSException { + return getConnection().createSharedConnectionConsumer(topic, subscriptionName, messageSelector, sessionPool, maxMessages); + } + + @Override + public ConnectionConsumer createSharedDurableConnectionConsumer(Topic topic, String subscriptionName, String messageSelector, ServerSessionPool sessionPool, int maxMessages) throws JMSException { + return getConnection().createSharedDurableConnectionConsumer(topic, subscriptionName, messageSelector, sessionPool, maxMessages); + } + // Implementation methods // ------------------------------------------------------------------------- @@ -200,9 +220,9 @@ public Connection getConnection() throws JMSException { return pool.getConnection(); } - protected void assertNotClosed() throws javax.jms.IllegalStateException { + protected void assertNotClosed() throws jakarta.jms.IllegalStateException { if (stopped || pool == null) { - throw new javax.jms.IllegalStateException("Connection closed"); + throw new jakarta.jms.IllegalStateException("Connection closed"); } } diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledMessageConsumer.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledMessageConsumer.java index b651f5ad06..b8c22f4046 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledMessageConsumer.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledMessageConsumer.java @@ -16,10 +16,10 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.JMSException; -import javax.jms.Message; -import javax.jms.MessageConsumer; -import javax.jms.MessageListener; +import jakarta.jms.JMSException; +import jakarta.jms.Message; +import jakarta.jms.MessageConsumer; +import jakarta.jms.MessageListener; /** * A {@link MessageConsumer} which was created by {@link PooledSession}. diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledProducer.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledProducer.java index e72ea93cbe..477c84aaaf 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledProducer.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledProducer.java @@ -16,11 +16,11 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.Destination; -import javax.jms.InvalidDestinationException; -import javax.jms.JMSException; -import javax.jms.Message; -import javax.jms.MessageProducer; +import jakarta.jms.Destination; +import jakarta.jms.InvalidDestinationException; +import jakarta.jms.JMSException; +import jakarta.jms.Message; +import jakarta.jms.MessageProducer; /** * A pooled {@link MessageProducer} @@ -36,6 +36,7 @@ public class PooledProducer implements MessageProducer { private int priority; private long timeToLive; private boolean anonymous = true; + private long deliveryDelay; public PooledProducer(MessageProducer messageProducer, Destination destination) throws JMSException { this.messageProducer = messageProducer; @@ -47,6 +48,7 @@ public PooledProducer(MessageProducer messageProducer, Destination destination) this.disableMessageTimestamp = messageProducer.getDisableMessageTimestamp(); this.priority = messageProducer.getPriority(); this.timeToLive = messageProducer.getTimeToLive(); + this.deliveryDelay = messageProducer.getDeliveryDelay(); } @Override @@ -96,6 +98,54 @@ public void send(Destination destination, Message message, int deliveryMode, int } } + @Override + public void send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive, jakarta.jms.CompletionListener completionListener) throws JMSException { + if (destination == null) { + if (messageProducer.getDestination() == null) { + throw new UnsupportedOperationException("A destination must be specified."); + } + throw new InvalidDestinationException("Don't understand null destinations"); + } + + MessageProducer messageProducer = getMessageProducer(); + + // just in case let only one thread send at once + synchronized (messageProducer) { + if (anonymous && this.destination != null && !this.destination.equals(destination)) { + throw new UnsupportedOperationException("This producer can only send messages to: " + this.destination); + } + + // Producer will do it's own Destination validation so always use the destination + // based send method otherwise we might violate a JMS rule. + messageProducer.send(destination, message, deliveryMode, priority, timeToLive, completionListener); + } + } + + @Override + public void send(Message message, jakarta.jms.CompletionListener completionListener) throws JMSException { + send(destination, message, getDeliveryMode(), getPriority(), getTimeToLive(), completionListener); + } + + @Override + public void send(Destination destination, Message message, jakarta.jms.CompletionListener completionListener) throws JMSException { + send(destination, message, getDeliveryMode(), getPriority(), getTimeToLive(), completionListener); + } + + @Override + public void send(Message message, int deliveryMode, int priority, long timeToLive, jakarta.jms.CompletionListener completionListener) throws JMSException { + send(destination, message, deliveryMode, priority, timeToLive, completionListener); + } + + @Override + public long getDeliveryDelay() throws JMSException { + return deliveryDelay; + } + + @Override + public void setDeliveryDelay(long deliveryDelay) throws JMSException { + this.deliveryDelay = deliveryDelay; + } + @Override public Destination getDestination() { return destination; diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledQueueSender.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledQueueSender.java index c38632b05b..b3672aea5b 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledQueueSender.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledQueueSender.java @@ -16,11 +16,11 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.Destination; -import javax.jms.JMSException; -import javax.jms.Message; -import javax.jms.Queue; -import javax.jms.QueueSender; +import jakarta.jms.Destination; +import jakarta.jms.JMSException; +import jakarta.jms.Message; +import jakarta.jms.Queue; +import jakarta.jms.QueueSender; /** * @@ -43,6 +43,35 @@ public Queue getQueue() throws JMSException { return getQueueSender().getQueue(); } + @Override + public void send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive, jakarta.jms.CompletionListener completionListener) throws JMSException { + getQueueSender().send(destination, message, deliveryMode, priority, timeToLive, completionListener); + } + + @Override + public void send(Message message, jakarta.jms.CompletionListener completionListener) throws JMSException { + getQueueSender().send(message, completionListener); + } + + @Override + public void send(Destination destination, Message message, jakarta.jms.CompletionListener completionListener) throws JMSException { + getQueueSender().send(destination, message, completionListener); + } + + @Override + public void send(Message message, int deliveryMode, int priority, long timeToLive, jakarta.jms.CompletionListener completionListener) throws JMSException { + getQueueSender().send(message, deliveryMode, priority, timeToLive, completionListener); + } + + @Override + public long getDeliveryDelay() throws JMSException { + return getQueueSender().getDeliveryDelay(); + } + + @Override + public void setDeliveryDelay(long deliveryDelay) throws JMSException { + getQueueSender().setDeliveryDelay(deliveryDelay); + } protected QueueSender getQueueSender() { return (QueueSender) getMessageProducer(); diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSession.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSession.java index d6d8fb424d..14720a81d7 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSession.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSession.java @@ -19,30 +19,30 @@ import java.io.Serializable; import java.util.Iterator; import java.util.concurrent.CopyOnWriteArrayList; -import javax.jms.BytesMessage; -import javax.jms.Destination; -import javax.jms.JMSException; -import javax.jms.MapMessage; -import javax.jms.Message; -import javax.jms.MessageConsumer; -import javax.jms.MessageListener; -import javax.jms.MessageProducer; -import javax.jms.ObjectMessage; -import javax.jms.Queue; -import javax.jms.QueueBrowser; -import javax.jms.QueueReceiver; -import javax.jms.QueueSender; -import javax.jms.QueueSession; -import javax.jms.Session; -import javax.jms.StreamMessage; -import javax.jms.TemporaryQueue; -import javax.jms.TemporaryTopic; -import javax.jms.TextMessage; -import javax.jms.Topic; -import javax.jms.TopicPublisher; -import javax.jms.TopicSession; -import javax.jms.TopicSubscriber; -import javax.jms.XASession; +import jakarta.jms.BytesMessage; +import jakarta.jms.Destination; +import jakarta.jms.JMSException; +import jakarta.jms.MapMessage; +import jakarta.jms.Message; +import jakarta.jms.MessageConsumer; +import jakarta.jms.MessageListener; +import jakarta.jms.MessageProducer; +import jakarta.jms.ObjectMessage; +import jakarta.jms.Queue; +import jakarta.jms.QueueBrowser; +import jakarta.jms.QueueReceiver; +import jakarta.jms.QueueSender; +import jakarta.jms.QueueSession; +import jakarta.jms.Session; +import jakarta.jms.StreamMessage; +import jakarta.jms.TemporaryQueue; +import jakarta.jms.TemporaryTopic; +import jakarta.jms.TextMessage; +import jakarta.jms.Topic; +import jakarta.jms.TopicPublisher; +import jakarta.jms.TopicSession; +import jakarta.jms.TopicSubscriber; +import jakarta.jms.XASession; import javax.transaction.xa.XAResource; import org.apache.commons.pool.KeyedObjectPool; @@ -150,7 +150,7 @@ public void close() throws JMSException { try { sessionPool.returnObject(key, this); } catch (Exception e) { - javax.jms.IllegalStateException illegalStateException = new javax.jms.IllegalStateException(e.toString()); + jakarta.jms.IllegalStateException illegalStateException = new jakarta.jms.IllegalStateException(e.toString()); illegalStateException.initCause(e); throw illegalStateException; } @@ -231,6 +231,16 @@ public void unsubscribe(String s) throws JMSException { getInternalSession().unsubscribe(s); } + @Override + public MessageConsumer createSharedDurableConsumer(Topic topic, String name, String messageSelector) throws JMSException { + return addMessageConsumer(getInternalSession().createSharedDurableConsumer(topic, name, messageSelector)); + } + + @Override + public MessageConsumer createSharedDurableConsumer(Topic topic, String name) throws JMSException { + return addMessageConsumer(getInternalSession().createSharedDurableConsumer(topic, name)); + } + @Override public TextMessage createTextMessage() throws JMSException { return getInternalSession().createTextMessage(); @@ -323,6 +333,26 @@ public TopicSubscriber createDurableSubscriber(Topic topic, String name, String return addTopicSubscriber(getInternalSession().createDurableSubscriber(topic, name, selector, noLocal)); } + @Override + public MessageConsumer createDurableConsumer(Topic topic, String name, String messageSelector, boolean noLocal) throws JMSException { + return addMessageConsumer(getInternalSession().createDurableConsumer(topic, name, messageSelector, noLocal)); + } + + @Override + public MessageConsumer createDurableConsumer(Topic topic, String name) throws JMSException { + return addMessageConsumer(getInternalSession().createDurableConsumer(topic, name)); + } + + @Override + public MessageConsumer createSharedConsumer(Topic topic, String sharedSubscriptionName, String messageSelector) throws JMSException { + return addMessageConsumer(getInternalSession().createSharedConsumer(topic, sharedSubscriptionName, messageSelector)); + } + + @Override + public MessageConsumer createSharedConsumer(Topic topic, String sharedSubscriptionName) throws JMSException { + return addMessageConsumer(getInternalSession().createSharedConsumer(topic, sharedSubscriptionName)); + } + @Override public MessageListener getMessageListener() throws JMSException { return getInternalSession().getMessageListener(); @@ -470,6 +500,11 @@ private TopicSubscriber addTopicSubscriber(TopicSubscriber subscriber) { return subscriber; } + private MessageConsumer addMessageConsumer(MessageConsumer consumer) { + consumers.add(consumer); + return consumer; + } + private QueueReceiver addQueueReceiver(QueueReceiver receiver) { consumers.add(receiver); return receiver; diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSessionEventListener.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSessionEventListener.java index 7e5365da5f..df4551dd4c 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSessionEventListener.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledSessionEventListener.java @@ -16,8 +16,8 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.TemporaryQueue; -import javax.jms.TemporaryTopic; +import jakarta.jms.TemporaryQueue; +import jakarta.jms.TemporaryTopic; interface PooledSessionEventListener { diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledTopicPublisher.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledTopicPublisher.java index 260d79152f..36370b3435 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledTopicPublisher.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/PooledTopicPublisher.java @@ -16,11 +16,7 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.Destination; -import javax.jms.JMSException; -import javax.jms.Message; -import javax.jms.Topic; -import javax.jms.TopicPublisher; +import jakarta.jms.*; /** * @@ -54,4 +50,36 @@ public void publish(Topic topic, Message message, int i, int i1, long l) throws protected TopicPublisher getTopicPublisher() { return (TopicPublisher) getMessageProducer(); } + + @Override + public void setDeliveryDelay(long deliveryDelay) throws JMSException { + getTopicPublisher().setDeliveryDelay(deliveryDelay); + } + + @Override + public long getDeliveryDelay() throws JMSException { + return getDeliveryMode(); + } + + @Override + public void send(Message message, CompletionListener completionListener) throws JMSException { + getTopicPublisher().send(message, completionListener); + } + + @Override + public void send(Message message, int deliveryMode, int priority, long timeToLive, CompletionListener completionListener) + throws JMSException { + getTopicPublisher().send(message, deliveryMode, priority, timeToLive, completionListener); + } + + @Override + public void send(Destination destination, Message message, CompletionListener completionListener) throws JMSException { + getTopicPublisher().send(destination, message, completionListener); + } + + @Override + public void send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive, + CompletionListener completionListener) throws JMSException { + getTopicPublisher().send(destination, message, deliveryMode, priority, timeToLive, completionListener); + } } diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/RecoverableConnectionPool.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/RecoverableConnectionPool.java index 8bc862662c..ef9ccdb800 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/RecoverableConnectionPool.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/RecoverableConnectionPool.java @@ -16,10 +16,10 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.Connection; -import javax.jms.JMSException; -import javax.jms.XASession; -import javax.transaction.TransactionManager; +import jakarta.jms.Connection; +import jakarta.jms.JMSException; +import jakarta.jms.XASession; +import jakarta.transaction.TransactionManager; import javax.transaction.xa.XAResource; import org.apache.geronimo.transaction.manager.WrapperNamedXAResource; diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaConnectionPool.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaConnectionPool.java index eb87e19d63..8a8adf39ee 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaConnectionPool.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaConnectionPool.java @@ -16,16 +16,16 @@ */ package org.apache.aries.transaction.jms.internal; -import javax.jms.Connection; -import javax.jms.JMSException; -import javax.jms.Session; -import javax.jms.TemporaryQueue; -import javax.jms.TemporaryTopic; -import javax.jms.XAConnection; -import javax.transaction.RollbackException; -import javax.transaction.Status; -import javax.transaction.SystemException; -import javax.transaction.TransactionManager; +import jakarta.jms.Connection; +import jakarta.jms.JMSException; +import jakarta.jms.Session; +import jakarta.jms.TemporaryQueue; +import jakarta.jms.TemporaryTopic; +import jakarta.jms.XAConnection; +import jakarta.transaction.RollbackException; +import jakarta.transaction.Status; +import jakarta.transaction.SystemException; +import jakarta.transaction.TransactionManager; import javax.transaction.xa.XAResource; /** @@ -106,7 +106,7 @@ protected XAResource createXaResource(PooledSession session) throws JMSException return session.getXAResource(); } - protected class Synchronization implements javax.transaction.Synchronization { + protected class Synchronization implements jakarta.transaction.Synchronization { private final PooledSession session; private Synchronization(PooledSession session) { diff --git a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaPooledConnectionFactory.java b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaPooledConnectionFactory.java index 553599e186..9568b6bb82 100644 --- a/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaPooledConnectionFactory.java +++ b/transaction/transaction-jms/src/main/java/org/apache/aries/transaction/jms/internal/XaPooledConnectionFactory.java @@ -18,19 +18,23 @@ import java.io.Serializable; import java.util.Hashtable; -import javax.jms.Connection; -import javax.jms.JMSException; -import javax.jms.QueueConnection; -import javax.jms.QueueConnectionFactory; -import javax.jms.TopicConnection; -import javax.jms.TopicConnectionFactory; +import jakarta.jms.Connection; +import jakarta.jms.ConnectionFactory; +import jakarta.jms.JMSException; +import jakarta.jms.JMSContext; +import jakarta.jms.JMSRuntimeException; +import jakarta.jms.QueueConnection; +import jakarta.jms.QueueConnectionFactory; +import jakarta.jms.Session; +import jakarta.jms.TopicConnection; +import jakarta.jms.TopicConnectionFactory; import javax.naming.Binding; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.Name; import javax.naming.NamingEnumeration; import javax.naming.spi.ObjectFactory; -import javax.transaction.TransactionManager; +import jakarta.transaction.TransactionManager; import org.apache.aries.transaction.jms.PooledConnectionFactory; import org.slf4j.Logger; @@ -142,4 +146,28 @@ public TopicConnection createTopicConnection(String userName, String password) t return (TopicConnection) createConnection(userName, password); } + @Override + public JMSContext createContext() throws JMSRuntimeException { + return createContext(null, null, Session.AUTO_ACKNOWLEDGE); + } + + @Override + public JMSContext createContext(int sessionMode) throws JMSRuntimeException { + return createContext(null, null, sessionMode); + } + + @Override + public JMSContext createContext(String userName, String password, int sessionMode) throws JMSRuntimeException { + ConnectionFactory cf = getConnectionFactory(); + if (cf == null) { + throw new JMSRuntimeException("ConnectionFactory not set"); + } + return cf.createContext(userName, password, sessionMode); + } + + @Override + public JMSContext createContext(String userName, String password) throws JMSRuntimeException { + return createContext(userName, password, Session.AUTO_ACKNOWLEDGE); + } + } diff --git a/transaction/transaction-manager/pom.xml b/transaction/transaction-manager/pom.xml index 1f366e5cfd..c9003c03cd 100644 --- a/transaction/transaction-manager/pom.xml +++ b/transaction/transaction-manager/pom.xml @@ -22,7 +22,7 @@ org.apache.aries parent - 2.0.1 + 3.0.0 ../../parent/pom.xml @@ -31,7 +31,7 @@ org.apache.aries.transaction.manager bundle Apache Aries Transaction Manager - 1.3.4-SNAPSHOT + 2.0.0-SNAPSHOT scm:git:https://gitbox.apache.org/repos/asf/aries.git @@ -47,7 +47,7 @@ org.springframework.*;resolution:=optional;version="[2.5,5)", !org.apache.geronimo.transaction*, - javax.resource.spi;resolution:=optional, + jakarta.resource.spi;resolution:=optional, org.osgi.framework, org.osgi.service.cm, * @@ -60,25 +60,27 @@ org.apache.aries.transaction.internal.Activator - osgi.service; effective:=active; objectClass:List<String>="org.apache.aries.transaction.AriesTransactionManager,javax.transaction.TransactionManager,javax.transaction.TransactionSynchronizationRegistry,javax.transaction.UserTransaction,org.apache.geronimo.transaction.manager.RecoverableTransactionManager,org.springframework.transaction.PlatformTransactionManager" + osgi.service; effective:=active; objectClass:List<String>="org.apache.aries.transaction.AriesTransactionManager,jakarta.transaction.TransactionManager,jakarta.transaction.TransactionSynchronizationRegistry,jakarta.transaction.UserTransaction,org.apache.geronimo.transaction.manager.RecoverableTransactionManager,org.springframework.transaction.PlatformTransactionManager" {maven-resources}, - javax/resource/spi/XATerminator.class=target/classes/javax/resource/spi/XATerminator.class + jakarta/resource/spi/XATerminator.class=target/classes/jakarta/resource/spi/XATerminator.class 1.3.0 false false 2.21.0 - 3.1.4 + 4.0.0 1.0.1-1 + 2.1.0 + 2.0.1 4.13.2 5.1.9 3.6.1 - 4.3.1 - 4.3.1 - 5.3.39 + 7.0.0 + 8.0.0 + 6.1.14 @@ -94,6 +96,18 @@ ${osgi.cmpn.version} provided + + jakarta.transaction + jakarta.transaction-api + ${jakarta.transaction-api.version} + provided + + + jakarta.resource + jakarta.resource-api + ${jakarta.resource-api.version} + provided + org.apache.geronimo.components geronimo-transaction @@ -172,11 +186,11 @@ generate-sources - + - + run diff --git a/transaction/transaction-manager/src/main/java/javax/resource/spi/XATerminator.java b/transaction/transaction-manager/src/main/java/jakarta/resource/spi/XATerminator.java similarity index 93% rename from transaction/transaction-manager/src/main/java/javax/resource/spi/XATerminator.java rename to transaction/transaction-manager/src/main/java/jakarta/resource/spi/XATerminator.java index 7016914ecb..235013fb36 100644 --- a/transaction/transaction-manager/src/main/java/javax/resource/spi/XATerminator.java +++ b/transaction/transaction-manager/src/main/java/jakarta/resource/spi/XATerminator.java @@ -18,12 +18,12 @@ */ // -// This source code implements specifications defined by the Java +// This source code implements specifications defined by the Jakarta // Community Process. In order to remain compliant with the specification // DO NOT add / change / or delete method signatures! // -package javax.resource.spi; +package jakarta.resource.spi; import javax.transaction.xa.XAException; import javax.transaction.xa.Xid; @@ -41,4 +41,4 @@ public interface XATerminator { public Xid[] recover(int flag) throws XAException; public void rollback(Xid xid) throws XAException; -} \ No newline at end of file +} diff --git a/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/AriesTransactionManager.java b/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/AriesTransactionManager.java index 7928786fa7..11d4c2cd88 100644 --- a/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/AriesTransactionManager.java +++ b/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/AriesTransactionManager.java @@ -16,10 +16,10 @@ */ package org.apache.aries.transaction; -import javax.resource.spi.XATerminator; -import javax.transaction.TransactionManager; -import javax.transaction.TransactionSynchronizationRegistry; -import javax.transaction.UserTransaction; +import jakarta.resource.spi.XATerminator; +import jakarta.transaction.TransactionManager; +import jakarta.transaction.TransactionSynchronizationRegistry; +import jakarta.transaction.UserTransaction; import org.apache.geronimo.transaction.manager.MonitorableTransactionManager; import org.apache.geronimo.transaction.manager.RecoverableTransactionManager; diff --git a/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/AriesPlatformTransactionManager.java b/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/AriesPlatformTransactionManager.java index 922f635e7a..f97c0e3dd6 100644 --- a/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/AriesPlatformTransactionManager.java +++ b/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/AriesPlatformTransactionManager.java @@ -20,9 +20,9 @@ import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; -import javax.transaction.Status; -import javax.transaction.SystemException; -import javax.transaction.Transaction; +import jakarta.transaction.Status; +import jakarta.transaction.SystemException; +import jakarta.transaction.Transaction; import javax.transaction.xa.XAException; import org.apache.geronimo.transaction.manager.TransactionLog; diff --git a/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/TransactionManagerService.java b/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/TransactionManagerService.java index b0e6e7df10..6239968cf1 100644 --- a/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/TransactionManagerService.java +++ b/transaction/transaction-manager/src/main/java/org/apache/aries/transaction/internal/TransactionManagerService.java @@ -20,9 +20,9 @@ import java.util.ArrayList; import java.util.Dictionary; import java.util.List; -import javax.transaction.TransactionManager; -import javax.transaction.TransactionSynchronizationRegistry; -import javax.transaction.UserTransaction; +import jakarta.transaction.TransactionManager; +import jakarta.transaction.TransactionSynchronizationRegistry; +import jakarta.transaction.UserTransaction; import javax.transaction.xa.XAException; import org.apache.aries.transaction.AriesTransactionManager; diff --git a/transaction/transaction-manager/src/test/java/org/apache/aries/transaction/internal/LogTest.java b/transaction/transaction-manager/src/test/java/org/apache/aries/transaction/internal/LogTest.java index c5c7ca8457..1c9b0b56a4 100644 --- a/transaction/transaction-manager/src/test/java/org/apache/aries/transaction/internal/LogTest.java +++ b/transaction/transaction-manager/src/test/java/org/apache/aries/transaction/internal/LogTest.java @@ -18,9 +18,9 @@ package org.apache.aries.transaction.internal; import java.io.File; -import javax.transaction.SystemException; -import javax.transaction.Transaction; -import javax.transaction.TransactionManager; +import jakarta.transaction.SystemException; +import jakarta.transaction.Transaction; +import jakarta.transaction.TransactionManager; import javax.transaction.xa.XAException; import javax.transaction.xa.XAResource; import javax.transaction.xa.Xid; diff --git a/transaction/transaction-testbundle/pom.xml b/transaction/transaction-testbundle/pom.xml index e339a5ad56..418c85fdfd 100644 --- a/transaction/transaction-testbundle/pom.xml +++ b/transaction/transaction-testbundle/pom.xml @@ -24,14 +24,14 @@ org.apache.aries parent - 2.0.0 + 3.0.0 ../../parent/pom.xml org.apache.aries.transaction org.apache.aries.transaction.testbundle bundle - 1.0.1-SNAPSHOT + 2.0.0-SNAPSHOT Apache Aries Transaction Test Bundle @@ -50,8 +50,8 @@ org.apache.aries.transaction.test.impl - 1.2 - 1.0.2 + 2.0.1 + 3.0.0-SNAPSHOT @@ -62,11 +62,33 @@ ${org.apache.aries.transaction.blueprint.version} - javax.transaction - javax.transaction-api - ${javax.transaction-api.version} + jakarta.transaction + jakarta.transaction-api + ${jakarta.transaction-api.version} provided + + + + org.apache.felix + maven-bundle-plugin + 5.1.9 + true + + + org.apache.aries.transaction.test + org.apache.aries.transaction.test.impl + + jakarta.transaction;version="[2.0,3.0)", + java.sql, + * + + + + + + + diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/MandatoryTestBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/MandatoryTestBeanImpl.java index 636e4d235e..fc132dc2b1 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/MandatoryTestBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/MandatoryTestBeanImpl.java @@ -19,7 +19,7 @@ package org.apache.aries.transaction.test.impl; import java.sql.SQLException; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; public class MandatoryTestBeanImpl extends TestBeanImpl { diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NeverTestBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NeverTestBeanImpl.java index 4506c4641f..343e2f8dca 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NeverTestBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NeverTestBeanImpl.java @@ -19,8 +19,8 @@ package org.apache.aries.transaction.test.impl; import java.sql.SQLException; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; public class NeverTestBeanImpl extends TestBeanImpl { diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NotSupportedTestBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NotSupportedTestBeanImpl.java index 413e5e7d30..04082f9388 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NotSupportedTestBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/NotSupportedTestBeanImpl.java @@ -19,7 +19,7 @@ package org.apache.aries.transaction.test.impl; import java.sql.SQLException; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; @Transactional(Transactional.TxType.NOT_SUPPORTED) public class NotSupportedTestBeanImpl extends TestBeanImpl { diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiredTestBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiredTestBeanImpl.java index cbfd8be19b..468159dc6c 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiredTestBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiredTestBeanImpl.java @@ -19,18 +19,18 @@ package org.apache.aries.transaction.test.impl; import java.sql.SQLException; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; public class RequiredTestBeanImpl extends TestBeanImpl { @Override - @Transactional(Transactional.TxType.REQUIRED) + @Transactional(jakarta.transaction.Transactional.TxType.REQUIRED) public void insertRow(String name, int value, Exception e) throws SQLException { super.insertRow(name, value, e); } @Override - @Transactional(Transactional.TxType.REQUIRED) + @Transactional(jakarta.transaction.Transactional.TxType.REQUIRED) public void delegateInsertRow(String name, int value) throws SQLException { super.delegateInsertRow(name, value); } diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiresNewTestBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiresNewTestBeanImpl.java index 2cbc6b99dd..d1f29c2a79 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiresNewTestBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RequiresNewTestBeanImpl.java @@ -19,8 +19,8 @@ package org.apache.aries.transaction.test.impl; import java.sql.SQLException; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; public class RequiresNewTestBeanImpl extends TestBeanImpl { diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RollbackOnBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RollbackOnBeanImpl.java index f73b6e7da4..ed8c3924df 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RollbackOnBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/RollbackOnBeanImpl.java @@ -18,10 +18,10 @@ */ package org.apache.aries.transaction.test.impl; -import static javax.transaction.Transactional.TxType; +import static jakarta.transaction.Transactional.TxType; import java.sql.SQLException; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; import org.apache.aries.transaction.test.RollbackOnBean; import org.apache.aries.transaction.test.TestBean; diff --git a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/SupportsTestBeanImpl.java b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/SupportsTestBeanImpl.java index f314234702..d991a63284 100644 --- a/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/SupportsTestBeanImpl.java +++ b/transaction/transaction-testbundle/src/main/java/org/apache/aries/transaction/test/impl/SupportsTestBeanImpl.java @@ -19,8 +19,8 @@ package org.apache.aries.transaction.test.impl; import java.sql.SQLException; -import javax.transaction.Transactional; -import javax.transaction.Transactional.TxType; +import jakarta.transaction.Transactional; +import jakarta.transaction.Transactional.TxType; public class SupportsTestBeanImpl extends TestBeanImpl { diff --git a/transaction/transaction-testds/pom.xml b/transaction/transaction-testds/pom.xml index e62999f2ae..c186a2dd53 100644 --- a/transaction/transaction-testds/pom.xml +++ b/transaction/transaction-testds/pom.xml @@ -24,14 +24,14 @@ org.apache.aries parent - 2.0.0 + 3.0.0 ../../parent/pom.xml org.apache.aries.transaction org.apache.aries.transaction.testds Apache Aries Transaction Test Datasource - 1.0.1-SNAPSHOT + 2.0.0-SNAPSHOT bundle