diff --git a/.github/workflows/cd_build.yml b/.github/workflows/cd_build.yml
index 0772f1e8..280428b9 100644
--- a/.github/workflows/cd_build.yml
+++ b/.github/workflows/cd_build.yml
@@ -22,7 +22,7 @@ jobs:
- name: Build, publish to GPR and tag
run: |
if [ "$GITHUB_REPOSITORY" == "gruelbox/transaction-outbox" ]; then
- revision="3.1.$GITHUB_RUN_NUMBER"
+ revision="4.1.$GITHUB_RUN_NUMBER"
echo "Building $revision at $GITHUB_SHA"
mvn -Pdelombok -B deploy -s $GITHUB_WORKSPACE/settings.xml -Drevision="$revision"
echo "Tagging $revision"
diff --git a/pom.xml b/pom.xml
index 6aab82b5..a42b1b87 100644
--- a/pom.xml
+++ b/pom.xml
@@ -72,12 +72,17 @@
org.hibernate.validator
hibernate-validator
- 7.0.1.Final
+ 6.2.0.Final
+
+
+ javax.el
+ javax.el-api
+ 3.0.0
org.glassfish
- jakarta.el
- 4.0.1
+ javax.el
+ 3.0.0
diff --git a/transactionoutbox-core/pom.xml b/transactionoutbox-core/pom.xml
index 39da4769..e8ba704d 100644
--- a/transactionoutbox-core/pom.xml
+++ b/transactionoutbox-core/pom.xml
@@ -38,9 +38,13 @@
org.hibernate.validator
hibernate-validator
+
+ javax.el
+ javax.el-api
+
org.glassfish
- jakarta.el
+ javax.el
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultMigrationManager.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultMigrationManager.java
index dbdc3a51..5f9ea6c1 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultMigrationManager.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultMigrationManager.java
@@ -1,6 +1,5 @@
package com.gruelbox.transactionoutbox;
-import jakarta.validation.constraints.NotNull;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
@@ -8,6 +7,7 @@
import java.util.Collections;
import java.util.List;
import java.util.Map;
+import javax.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
@@ -16,7 +16,6 @@
* Simple database migration manager. Inspired by Flyway, Liquibase, Morf etc, just trimmed down for
* minimum dependencies.
*/
-@SuppressWarnings("SqlResolve")
@Slf4j
class DefaultMigrationManager {
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultPersistor.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultPersistor.java
index 4dae3f30..52e41cb3 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultPersistor.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DefaultPersistor.java
@@ -1,6 +1,5 @@
package com.gruelbox.transactionoutbox;
-import jakarta.validation.constraints.NotNull;
import java.io.IOException;
import java.io.Reader;
import java.io.StringWriter;
@@ -14,6 +13,7 @@
import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
+import javax.validation.constraints.NotNull;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Builder;
@@ -31,7 +31,6 @@
* the other hand, you want to use a completely non-relational underlying data store or do something
* equally esoteric, you may prefer to implement {@link Persistor} from the ground up.
*/
-@SuppressWarnings("SqlResolve")
@Slf4j
@SuperBuilder
@AllArgsConstructor(access = AccessLevel.PROTECTED)
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DriverConnectionProvider.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DriverConnectionProvider.java
index 896fb510..30c239f2 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DriverConnectionProvider.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/DriverConnectionProvider.java
@@ -2,9 +2,9 @@
import static com.gruelbox.transactionoutbox.Utils.uncheckedly;
-import jakarta.validation.constraints.NotBlank;
import java.sql.Connection;
import java.sql.DriverManager;
+import javax.validation.constraints.NotBlank;
import lombok.experimental.SuperBuilder;
import lombok.extern.slf4j.Slf4j;
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/ExecutorSubmitter.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/ExecutorSubmitter.java
index dcba184d..0770b75c 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/ExecutorSubmitter.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/ExecutorSubmitter.java
@@ -1,10 +1,10 @@
package com.gruelbox.transactionoutbox;
-import jakarta.validation.constraints.NotNull;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.Executor;
import java.util.concurrent.RejectedExecutionException;
import java.util.function.Consumer;
+import javax.validation.constraints.NotNull;
import lombok.Builder;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.event.Level;
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutbox.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutbox.java
index dacbf029..3f288bed 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutbox.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutbox.java
@@ -1,9 +1,9 @@
package com.gruelbox.transactionoutbox;
-import jakarta.validation.ClockProvider;
import java.time.Clock;
import java.time.Duration;
import java.util.concurrent.Executor;
+import javax.validation.ClockProvider;
import lombok.ToString;
import org.slf4j.MDC;
import org.slf4j.event.Level;
@@ -109,7 +109,7 @@ static TransactionOutboxBuilder builder() {
* @return True if the request to unblock the entry was successful. May return false if another
* thread unblocked the entry first.
*/
- @SuppressWarnings({"unused"})
+ @SuppressWarnings({"unchecked", "rawtypes"})
boolean unblock(String entryId, Object transactionContext);
/**
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxEntry.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxEntry.java
index 5b9f36e0..015949c5 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxEntry.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxEntry.java
@@ -2,11 +2,11 @@
import static java.util.stream.Collectors.joining;
-import jakarta.validation.constraints.Future;
-import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.PositiveOrZero;
import java.time.Instant;
import java.util.Arrays;
+import javax.validation.constraints.Future;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.PositiveOrZero;
import lombok.AccessLevel;
import lombok.EqualsAndHashCode;
import lombok.Getter;
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxImpl.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxImpl.java
index 3b7af6fc..0196d046 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxImpl.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/TransactionOutboxImpl.java
@@ -5,10 +5,6 @@
import static java.time.temporal.ChronoUnit.MILLIS;
import static java.time.temporal.ChronoUnit.MINUTES;
-import jakarta.validation.ClockProvider;
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.Min;
-import jakarta.validation.constraints.NotNull;
import java.lang.reflect.InvocationTargetException;
import java.time.Duration;
import java.time.Instant;
@@ -16,6 +12,10 @@
import java.util.List;
import java.util.UUID;
import java.util.concurrent.atomic.AtomicBoolean;
+import javax.validation.ClockProvider;
+import javax.validation.Valid;
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotNull;
import lombok.ToString;
import lombok.extern.slf4j.Slf4j;
import org.hibernate.validator.constraints.Length;
diff --git a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/Validator.java b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/Validator.java
index 998fe904..36c58d53 100644
--- a/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/Validator.java
+++ b/transactionoutbox-core/src/main/java/com/gruelbox/transactionoutbox/Validator.java
@@ -1,12 +1,12 @@
package com.gruelbox.transactionoutbox;
-import jakarta.validation.ClockProvider;
-import jakarta.validation.Validation;
-import jakarta.validation.ValidationException;
+import javax.validation.ClockProvider;
+import javax.validation.Validation;
+import javax.validation.ValidationException;
class Validator {
- private final jakarta.validation.Validator validator;
+ private final javax.validation.Validator validator;
Validator(ClockProvider clockProvider) {
this.validator =
diff --git a/transactionoutbox-core/src/test/java/com/gruelbox/transactionoutbox/TestValidator.java b/transactionoutbox-core/src/test/java/com/gruelbox/transactionoutbox/TestValidator.java
index 37ffe492..2aa356cb 100644
--- a/transactionoutbox-core/src/test/java/com/gruelbox/transactionoutbox/TestValidator.java
+++ b/transactionoutbox-core/src/test/java/com/gruelbox/transactionoutbox/TestValidator.java
@@ -3,11 +3,11 @@
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
import static org.junit.jupiter.api.Assertions.assertThrows;
-import jakarta.validation.ValidationException;
import java.math.BigDecimal;
import java.time.Clock;
import java.time.Instant;
import java.time.ZoneId;
+import javax.validation.ValidationException;
import org.junit.jupiter.api.Test;
class TestValidator {
diff --git a/transactionoutbox-spring/src/test/java/com/gruelbox/transactionoutbox/acceptance/TransactionOutboxSpringDemoApplication.java b/transactionoutbox-spring/src/test/java/com/gruelbox/transactionoutbox/acceptance/TransactionOutboxSpringDemoApplication.java
index 2ae7fdc6..0d6f5e8b 100644
--- a/transactionoutbox-spring/src/test/java/com/gruelbox/transactionoutbox/acceptance/TransactionOutboxSpringDemoApplication.java
+++ b/transactionoutbox-spring/src/test/java/com/gruelbox/transactionoutbox/acceptance/TransactionOutboxSpringDemoApplication.java
@@ -4,17 +4,12 @@
import com.gruelbox.transactionoutbox.Persistor;
import com.gruelbox.transactionoutbox.SpringInstantiator;
import com.gruelbox.transactionoutbox.SpringTransactionManager;
-import com.gruelbox.transactionoutbox.SpringTransactionOutboxConfiguration;
import com.gruelbox.transactionoutbox.TransactionOutbox;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.Lazy;
-@Import({
- SpringTransactionOutboxConfiguration.class,
-})
@SpringBootApplication
public class TransactionOutboxSpringDemoApplication {