diff --git a/base/pom.xml b/base/pom.xml
index 65701b4a3..ec68a0e3e 100644
--- a/base/pom.xml
+++ b/base/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-base
diff --git a/base/spotbugs-exclude.xml b/base/spotbugs-exclude.xml
index 8dea15d91..b0f7aa792 100644
--- a/base/spotbugs-exclude.xml
+++ b/base/spotbugs-exclude.xml
@@ -37,4 +37,26 @@
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lifecycle/pom.xml b/lifecycle/pom.xml
index 2485fb31f..b12bed221 100644
--- a/lifecycle/pom.xml
+++ b/lifecycle/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-lifecycle
@@ -40,16 +40,16 @@
com.google.inject
guice
+
+ jakarta.inject
+ jakarta.inject-api
+ provided
+
jakarta.servlet
jakarta.servlet-api
test
-
- javax.inject
- javax.inject
- provided
-
org.awaitility
awaitility
diff --git a/lifecycle/spotbugs-exclude.xml b/lifecycle/spotbugs-exclude.xml
index 1cc1caf12..79e26cf40 100644
--- a/lifecycle/spotbugs-exclude.xml
+++ b/lifecycle/spotbugs-exclude.xml
@@ -39,4 +39,21 @@
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lifecycle/src/main/java/org/killbill/billing/lifecycle/DefaultLifecycle.java b/lifecycle/src/main/java/org/killbill/billing/lifecycle/DefaultLifecycle.java
index 568165e0e..90dabad4a 100644
--- a/lifecycle/src/main/java/org/killbill/billing/lifecycle/DefaultLifecycle.java
+++ b/lifecycle/src/main/java/org/killbill/billing/lifecycle/DefaultLifecycle.java
@@ -32,7 +32,7 @@
import java.util.concurrent.ConcurrentHashMap;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.lifecycle.api.Lifecycle;
import org.killbill.billing.lifecycle.config.LifecycleConfig;
diff --git a/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultBusService.java b/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultBusService.java
index ede9c7210..495733a52 100644
--- a/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultBusService.java
+++ b/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultBusService.java
@@ -19,7 +19,7 @@
package org.killbill.billing.lifecycle.bus;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.lifecycle.api.BusService;
import org.killbill.billing.platform.api.LifecycleHandlerType;
diff --git a/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultExternalBusService.java b/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultExternalBusService.java
index d7761378e..4736b58b1 100644
--- a/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultExternalBusService.java
+++ b/lifecycle/src/main/java/org/killbill/billing/lifecycle/bus/DefaultExternalBusService.java
@@ -19,8 +19,8 @@
package org.killbill.billing.lifecycle.bus;
-import javax.inject.Inject;
-import javax.inject.Named;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
import org.killbill.billing.lifecycle.api.ExternalBusService;
import org.killbill.billing.lifecycle.glue.BusModule;
diff --git a/lifecycle/src/main/java/org/killbill/billing/lifecycle/glue/PersistentBusProvider.java b/lifecycle/src/main/java/org/killbill/billing/lifecycle/glue/PersistentBusProvider.java
index f03dba0cf..188fa1dc6 100644
--- a/lifecycle/src/main/java/org/killbill/billing/lifecycle/glue/PersistentBusProvider.java
+++ b/lifecycle/src/main/java/org/killbill/billing/lifecycle/glue/PersistentBusProvider.java
@@ -19,9 +19,9 @@
package org.killbill.billing.lifecycle.glue;
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Provider;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
+import jakarta.inject.Provider;
import org.killbill.bus.DefaultPersistentBus;
import org.killbill.bus.InMemoryPersistentBus;
diff --git a/lifecycle/src/test/java/org/killbill/billing/lifecycle/TestLifecycle.java b/lifecycle/src/test/java/org/killbill/billing/lifecycle/TestLifecycle.java
index ddb8f1eef..bf743e259 100644
--- a/lifecycle/src/test/java/org/killbill/billing/lifecycle/TestLifecycle.java
+++ b/lifecycle/src/test/java/org/killbill/billing/lifecycle/TestLifecycle.java
@@ -23,7 +23,7 @@
import java.util.Set;
import java.util.SortedSet;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.lifecycle.DefaultLifecycle.LifecycleHandler;
import org.killbill.billing.platform.api.KillbillService;
diff --git a/osgi-api/pom.xml b/osgi-api/pom.xml
index ee107c342..526c588b7 100644
--- a/osgi-api/pom.xml
+++ b/osgi-api/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-api
diff --git a/osgi-bundles/bundles/eureka/pom.xml b/osgi-bundles/bundles/eureka/pom.xml
index a57c3795c..c2eb7c80f 100644
--- a/osgi-bundles/bundles/eureka/pom.xml
+++ b/osgi-bundles/bundles/eureka/pom.xml
@@ -20,7 +20,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-eureka
@@ -74,15 +74,15 @@
jakarta.activation-api
runtime
+
+ jakarta.inject
+ jakarta.inject-api
+
jakarta.servlet
jakarta.servlet-api
provided
-
- javax.inject
- javax.inject
-
org.apache.felix
org.apache.felix.framework
diff --git a/osgi-bundles/bundles/eureka/src/main/java/org/killbill/billing/osgi/bundles/eureka/EurekaServiceRegistry.java b/osgi-bundles/bundles/eureka/src/main/java/org/killbill/billing/osgi/bundles/eureka/EurekaServiceRegistry.java
index 6ee6b68f6..c04438e3a 100644
--- a/osgi-bundles/bundles/eureka/src/main/java/org/killbill/billing/osgi/bundles/eureka/EurekaServiceRegistry.java
+++ b/osgi-bundles/bundles/eureka/src/main/java/org/killbill/billing/osgi/bundles/eureka/EurekaServiceRegistry.java
@@ -19,7 +19,7 @@
package org.killbill.billing.osgi.bundles.eureka;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.osgi.api.ServiceDiscoveryRegistry;
import org.slf4j.Logger;
diff --git a/osgi-bundles/bundles/graphite/pom.xml b/osgi-bundles/bundles/graphite/pom.xml
index 1590abf3b..d11322efb 100644
--- a/osgi-bundles/bundles/graphite/pom.xml
+++ b/osgi-bundles/bundles/graphite/pom.xml
@@ -20,7 +20,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-graphite
@@ -40,6 +40,11 @@
org.slf4j
slf4j-api
+
+
+ org.eclipse.jetty.toolchain
+ jetty-jakarta-servlet-api
+
diff --git a/osgi-bundles/bundles/influxdb/pom.xml b/osgi-bundles/bundles/influxdb/pom.xml
index c39aea326..a8e070192 100644
--- a/osgi-bundles/bundles/influxdb/pom.xml
+++ b/osgi-bundles/bundles/influxdb/pom.xml
@@ -20,7 +20,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-influxdb
@@ -41,6 +41,11 @@
org.slf4j
slf4j-api
+
+
+ org.eclipse.jetty.toolchain
+ jetty-jakarta-servlet-api
+
diff --git a/osgi-bundles/bundles/kpm/pom.xml b/osgi-bundles/bundles/kpm/pom.xml
index cd6e66d97..9e3a4a71e 100644
--- a/osgi-bundles/bundles/kpm/pom.xml
+++ b/osgi-bundles/bundles/kpm/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-kpm
@@ -64,28 +64,20 @@
jakarta.activation-api
runtime
+
+ jakarta.inject
+ jakarta.inject-api
+
jakarta.servlet
jakarta.servlet-api
provided
-
- javax.inject
- javax.inject
-
org.apache.felix
org.apache.felix.framework
provided
-
- org.jooby
- jooby
-
-
- org.jooby
- jooby-jackson
-
org.kill-bill.billing
killbill-api
@@ -117,6 +109,17 @@
+
+ org.kill-bill.commons
+ killbill-jooby
+
+
+
+ org.slf4j
+ slf4j-api
+
+
+
org.kill-bill.commons
killbill-utils
diff --git a/osgi-bundles/bundles/kpm/spotbugs-exclude.xml b/osgi-bundles/bundles/kpm/spotbugs-exclude.xml
index e87d3ba5a..d682aa6d0 100644
--- a/osgi-bundles/bundles/kpm/spotbugs-exclude.xml
+++ b/osgi-bundles/bundles/kpm/spotbugs-exclude.xml
@@ -45,4 +45,25 @@
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/Activator.java b/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/Activator.java
index 35f728694..a06855248 100644
--- a/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/Activator.java
+++ b/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/Activator.java
@@ -22,8 +22,8 @@
import java.util.Hashtable;
import java.util.Properties;
-import javax.servlet.Servlet;
-import javax.servlet.http.HttpServlet;
+import jakarta.servlet.Servlet;
+import jakarta.servlet.http.HttpServlet;
import org.jooby.json.Jackson;
import org.killbill.billing.osgi.api.OSGIKillbillRegistrar;
diff --git a/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/PluginsResource.java b/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/PluginsResource.java
index b44e9d1d8..11928a89e 100644
--- a/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/PluginsResource.java
+++ b/osgi-bundles/bundles/kpm/src/main/java/org/killbill/billing/osgi/bundles/kpm/PluginsResource.java
@@ -21,8 +21,8 @@
import java.util.Optional;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.jooby.Result;
import org.jooby.Results;
diff --git a/osgi-bundles/bundles/kpm/src/test/java/org/killbill/billing/osgi/bundles/kpm/impl/TestDefaultPluginManager.java b/osgi-bundles/bundles/kpm/src/test/java/org/killbill/billing/osgi/bundles/kpm/impl/TestDefaultPluginManager.java
index 6051e29c3..6c09716c8 100644
--- a/osgi-bundles/bundles/kpm/src/test/java/org/killbill/billing/osgi/bundles/kpm/impl/TestDefaultPluginManager.java
+++ b/osgi-bundles/bundles/kpm/src/test/java/org/killbill/billing/osgi/bundles/kpm/impl/TestDefaultPluginManager.java
@@ -23,6 +23,7 @@
import org.killbill.billing.osgi.bundles.kpm.KpmProperties;
import org.killbill.billing.osgi.bundles.kpm.PluginIdentifiersDAO;
import org.killbill.billing.osgi.bundles.kpm.PluginManager.GetAvailablePluginsModel;
+import org.killbill.billing.osgi.bundles.kpm.TestUtils;
import org.killbill.billing.osgi.libs.killbill.OSGIKillbillAPI;
import org.killbill.billing.util.nodes.KillbillNodesApi;
import org.killbill.billing.util.nodes.NodeInfo;
@@ -47,7 +48,7 @@ public void beforeMethod() {
final OSGIKillbillAPI osgiKillbillAPI = Mockito.mock(OSGIKillbillAPI.class);
Mockito.when(osgiKillbillAPI.getKillbillNodesApi()).thenReturn(nodesApi);
- final Properties properties = new Properties();
+ final Properties properties = TestUtils.getTestProperties();
properties.setProperty("org.killbill.billing.plugin.kpm.availablePlugins.cache.enabled", "true");
final KpmProperties kpmProperties = new KpmProperties(properties);
diff --git a/osgi-bundles/bundles/logger/pom.xml b/osgi-bundles/bundles/logger/pom.xml
index 0eecf98c2..9e0a2f54f 100644
--- a/osgi-bundles/bundles/logger/pom.xml
+++ b/osgi-bundles/bundles/logger/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-logger
@@ -54,21 +54,6 @@
org.apache.felix.framework
provided
-
- org.jooby
- funzy
-
-
- org.jooby
- jooby
-
-
-
- org.slf4j
- slf4j-api
-
-
-
org.kill-bill.billing
killbill-api
@@ -99,6 +84,17 @@
org.kill-bill.commons
killbill-concurrent
+
+ org.kill-bill.commons
+ killbill-jooby
+
+
+
+ org.slf4j
+ slf4j-api
+
+
+
org.kill-bill.commons
killbill-utils
diff --git a/osgi-bundles/bundles/logger/src/main/java/org/killbill/billing/osgi/bundles/logger/Activator.java b/osgi-bundles/bundles/logger/src/main/java/org/killbill/billing/osgi/bundles/logger/Activator.java
index c4d793651..26989abdd 100644
--- a/osgi-bundles/bundles/logger/src/main/java/org/killbill/billing/osgi/bundles/logger/Activator.java
+++ b/osgi-bundles/bundles/logger/src/main/java/org/killbill/billing/osgi/bundles/logger/Activator.java
@@ -21,8 +21,8 @@
import java.util.Hashtable;
-import javax.servlet.Servlet;
-import javax.servlet.http.HttpServlet;
+import jakarta.servlet.Servlet;
+import jakarta.servlet.http.HttpServlet;
import org.killbill.billing.osgi.api.OSGIKillbillRegistrar;
import org.killbill.billing.osgi.api.OSGIPluginProperties;
diff --git a/osgi-bundles/bundles/metrics/pom.xml b/osgi-bundles/bundles/metrics/pom.xml
index 7abcbb4dc..0213e74e9 100644
--- a/osgi-bundles/bundles/metrics/pom.xml
+++ b/osgi-bundles/bundles/metrics/pom.xml
@@ -20,7 +20,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-metrics
diff --git a/osgi-bundles/bundles/pom.xml b/osgi-bundles/bundles/pom.xml
index b5bbd4d2e..ff1fad4b9 100644
--- a/osgi-bundles/bundles/pom.xml
+++ b/osgi-bundles/bundles/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-all-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles
diff --git a/osgi-bundles/bundles/prometheus/pom.xml b/osgi-bundles/bundles/prometheus/pom.xml
index 25cef03a1..ed71efe95 100644
--- a/osgi-bundles/bundles/prometheus/pom.xml
+++ b/osgi-bundles/bundles/prometheus/pom.xml
@@ -20,7 +20,7 @@
org.kill-bill.billing
killbill-platform-osgi-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-prometheus
diff --git a/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/Activator.java b/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/Activator.java
index fb6062105..6c12d6ccf 100644
--- a/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/Activator.java
+++ b/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/Activator.java
@@ -19,7 +19,7 @@
import java.util.Hashtable;
-import javax.servlet.Servlet;
+import jakarta.servlet.Servlet;
import org.killbill.billing.osgi.api.OSGIPluginProperties;
import org.killbill.billing.osgi.libs.killbill.KillbillActivatorBase;
diff --git a/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillExporter.java b/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillExporter.java
index 26ea614bb..9d48ba99a 100644
--- a/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillExporter.java
+++ b/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillExporter.java
@@ -27,9 +27,9 @@
import java.util.HashSet;
import java.util.Set;
-import javax.servlet.ServletRequest;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import io.prometheus.client.CollectorRegistry;
import io.prometheus.client.Predicate;
diff --git a/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillMetricsServlet.java b/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillMetricsServlet.java
index c8ad94e51..e4740ac75 100644
--- a/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillMetricsServlet.java
+++ b/osgi-bundles/bundles/prometheus/src/main/java/org/killbill/billing/osgi/bundles/prometheus/KillBillMetricsServlet.java
@@ -19,9 +19,9 @@
import java.io.IOException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import io.prometheus.client.CollectorRegistry;
diff --git a/osgi-bundles/defaultbundles/pom.xml b/osgi-bundles/defaultbundles/pom.xml
index f66460596..4c946ef4b 100644
--- a/osgi-bundles/defaultbundles/pom.xml
+++ b/osgi-bundles/defaultbundles/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-all-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-defaultbundles
diff --git a/osgi-bundles/libs/killbill/pom.xml b/osgi-bundles/libs/killbill/pom.xml
index a5f2d8e7b..a3d76b452 100644
--- a/osgi-bundles/libs/killbill/pom.xml
+++ b/osgi-bundles/libs/killbill/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-lib-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-lib-killbill
diff --git a/osgi-bundles/libs/pom.xml b/osgi-bundles/libs/pom.xml
index 99968f33f..aa05b4d33 100644
--- a/osgi-bundles/libs/pom.xml
+++ b/osgi-bundles/libs/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-all-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-lib-bundles
diff --git a/osgi-bundles/libs/slf4j-osgi/pom.xml b/osgi-bundles/libs/slf4j-osgi/pom.xml
index c0b80a5ce..8e76fd669 100644
--- a/osgi-bundles/libs/slf4j-osgi/pom.xml
+++ b/osgi-bundles/libs/slf4j-osgi/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-lib-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-lib-slf4j-osgi
diff --git a/osgi-bundles/libs/slf4j-osgi/spotbugs-exclude.xml b/osgi-bundles/libs/slf4j-osgi/spotbugs-exclude.xml
index 945d673dc..351e90cf8 100644
--- a/osgi-bundles/libs/slf4j-osgi/spotbugs-exclude.xml
+++ b/osgi-bundles/libs/slf4j-osgi/spotbugs-exclude.xml
@@ -35,4 +35,17 @@
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/osgi-bundles/pom.xml b/osgi-bundles/pom.xml
index 38aac168e..1cc18ceb8 100644
--- a/osgi-bundles/pom.xml
+++ b/osgi-bundles/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-all-bundles
diff --git a/osgi-bundles/tests/beatrix/pom.xml b/osgi-bundles/tests/beatrix/pom.xml
index 7b10861d7..33c588d22 100644
--- a/osgi-bundles/tests/beatrix/pom.xml
+++ b/osgi-bundles/tests/beatrix/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-test-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-test-beatrix
diff --git a/osgi-bundles/tests/payment/pom.xml b/osgi-bundles/tests/payment/pom.xml
index 485cfb656..daee6e0f5 100644
--- a/osgi-bundles/tests/payment/pom.xml
+++ b/osgi-bundles/tests/payment/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-test-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-bundles-test-payment
diff --git a/osgi-bundles/tests/pom.xml b/osgi-bundles/tests/pom.xml
index df02b3bc9..fe2b7458e 100644
--- a/osgi-bundles/tests/pom.xml
+++ b/osgi-bundles/tests/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform-osgi-all-bundles
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi-test-bundles
diff --git a/osgi/pom.xml b/osgi/pom.xml
index 3939e9095..0b6f7e331 100644
--- a/osgi/pom.xml
+++ b/osgi/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-osgi
@@ -69,12 +69,12 @@
guice
- jakarta.servlet
- jakarta.servlet-api
+ jakarta.inject
+ jakarta.inject-api
- javax.inject
- javax.inject
+ jakarta.servlet
+ jakarta.servlet-api
org.apache.felix
diff --git a/osgi/spotbugs-exclude.xml b/osgi/spotbugs-exclude.xml
index 63b9165d2..bcebaab3e 100644
--- a/osgi/spotbugs-exclude.xml
+++ b/osgi/spotbugs-exclude.xml
@@ -68,10 +68,11 @@
+
+
-
-
-
+
+
+
-
-
\ No newline at end of file
+
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/BundleRegistry.java b/osgi/src/main/java/org/killbill/billing/osgi/BundleRegistry.java
index 8b9a9c318..830bd1596 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/BundleRegistry.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/BundleRegistry.java
@@ -28,7 +28,7 @@
import java.util.stream.Collectors;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.osgi.api.DefaultPluginsInfoApi.DefaultPluginServiceInfo;
import org.killbill.billing.osgi.api.OSGIServiceDescriptor;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIKillbill.java b/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIKillbill.java
index d478adedf..bdecb3d55 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIKillbill.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIKillbill.java
@@ -20,7 +20,7 @@
package org.killbill.billing.osgi;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.account.api.AccountUserApi;
import org.killbill.billing.catalog.api.CatalogUserApi;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIService.java b/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIService.java
index 21218b519..89c75c034 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIService.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/DefaultOSGIService.java
@@ -27,8 +27,8 @@
import java.util.Map;
import java.util.Set;
-import javax.inject.Inject;
-import javax.inject.Named;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
import org.apache.felix.framework.Felix;
import org.apache.felix.framework.util.FelixConstants;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/FileInstall.java b/osgi/src/main/java/org/killbill/billing/osgi/FileInstall.java
index cdc0bb05b..158c3c22f 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/FileInstall.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/FileInstall.java
@@ -25,7 +25,7 @@
import java.util.concurrent.atomic.AtomicInteger;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.osgi.api.KillbillNodesApiHolder;
import org.killbill.billing.osgi.api.config.PluginConfig;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/KillbillActivator.java b/osgi/src/main/java/org/killbill/billing/osgi/KillbillActivator.java
index de1ea244b..deff9df35 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/KillbillActivator.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/KillbillActivator.java
@@ -29,9 +29,9 @@
import java.util.regex.Pattern;
import javax.annotation.Nullable;
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.servlet.Servlet;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
+import jakarta.servlet.Servlet;
import javax.sql.DataSource;
import org.killbill.billing.catalog.plugin.api.CatalogPluginApi;
@@ -63,7 +63,6 @@
import org.osgi.framework.ServiceEvent;
import org.osgi.framework.ServiceReference;
import org.osgi.service.event.Event;
-import org.osgi.service.http.HttpService;
import org.osgi.service.log.LogService;
import org.osgi.util.tracker.ServiceTracker;
import org.slf4j.Logger;
@@ -80,7 +79,6 @@ public class KillbillActivator implements BundleActivator, AllServiceListener {
private static final String LOG_SERVICE_NAME = "org.osgi.service.log.LogService";
private final OSGIKillbill osgiKillbill;
- private final HttpService defaultHttpService;
private final DataSource dataSource;
private final Clock clock;
private final KillbillEventRetriableBusHandler killbillEventRetriableBusHandler;
@@ -103,7 +101,6 @@ public KillbillActivator(@Named(DefaultOSGIModule.OSGI_DATA_SOURCE_ID) final Dat
final OSGIKillbill osgiKillbill,
final Clock clock,
final BundleRegistry bundleRegistry,
- final HttpService defaultHttpService,
final KillbillEventRetriableBusHandler killbillEventRetriableBusHandler,
final KillbillEventObservable observable,
final OSGIConfigProperties configProperties,
@@ -112,7 +109,6 @@ public KillbillActivator(@Named(DefaultOSGIModule.OSGI_DATA_SOURCE_ID) final Dat
final JNDIManager jndiManager) {
this.osgiKillbill = osgiKillbill;
this.bundleRegistry = bundleRegistry;
- this.defaultHttpService = defaultHttpService;
this.dataSource = dataSource;
this.clock = clock;
this.killbillEventRetriableBusHandler = killbillEventRetriableBusHandler;
@@ -208,7 +204,6 @@ public void start(final BundleContext context) throws Exception {
killbillEventRetriableBusHandler.register();
registrar.registerService(context, OSGIKillbill.class, osgiKillbill, props);
- registrar.registerService(context, HttpService.class, defaultHttpService, props);
registrar.registerService(context, Observable.class, observable, props);
registrar.registerService(context, DataSource.class, dataSource, props);
registrar.registerService(context, OSGIConfigProperties.class, configProperties, props);
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/KillbillEventRetriableBusHandler.java b/osgi/src/main/java/org/killbill/billing/osgi/KillbillEventRetriableBusHandler.java
index cad34f3fb..dcdd351fd 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/KillbillEventRetriableBusHandler.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/KillbillEventRetriableBusHandler.java
@@ -22,8 +22,8 @@
import java.io.IOException;
import java.util.UUID;
-import javax.inject.Inject;
-import javax.inject.Named;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
import org.killbill.billing.notification.plugin.api.ExtBusEvent;
import org.killbill.billing.osgi.api.KillbillEventRetriableBusHandlerService;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/MetricRegistryServiceRegistration.java b/osgi/src/main/java/org/killbill/billing/osgi/MetricRegistryServiceRegistration.java
index 10481445e..41aacf9c4 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/MetricRegistryServiceRegistration.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/MetricRegistryServiceRegistration.java
@@ -22,7 +22,7 @@
import java.util.List;
import java.util.Map.Entry;
-import javax.inject.Singleton;
+import jakarta.inject.Singleton;
import org.killbill.billing.osgi.api.OSGIServiceDescriptor;
import org.killbill.billing.osgi.api.OSGISingleServiceRegistration;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/OSGIListener.java b/osgi/src/main/java/org/killbill/billing/osgi/OSGIListener.java
index d2b67f3f3..3bfcdd76d 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/OSGIListener.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/OSGIListener.java
@@ -25,7 +25,7 @@
import java.util.Map;
import java.util.stream.Stream;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.notification.plugin.api.BroadcastMetadata;
import org.killbill.billing.notification.plugin.api.ExtBusEvent;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/PureOSGIBundleFinder.java b/osgi/src/main/java/org/killbill/billing/osgi/PureOSGIBundleFinder.java
index 90d83a146..072cc54a4 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/PureOSGIBundleFinder.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/PureOSGIBundleFinder.java
@@ -26,8 +26,8 @@
import java.util.List;
import java.util.Map;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.killbill.billing.osgi.config.OSGIConfig;
import org.killbill.billing.osgi.pluginconf.PluginConfigException;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/ServiceRegistryServiceRegistration.java b/osgi/src/main/java/org/killbill/billing/osgi/ServiceRegistryServiceRegistration.java
index 0c698a107..b47e54a91 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/ServiceRegistryServiceRegistration.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/ServiceRegistryServiceRegistration.java
@@ -21,7 +21,7 @@
import java.util.Map;
import java.util.Set;
-import javax.inject.Singleton;
+import jakarta.inject.Singleton;
import org.killbill.billing.osgi.api.OSGIServiceDescriptor;
import org.killbill.billing.osgi.api.OSGIServiceRegistration;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/api/DefaultPluginsInfoApi.java b/osgi/src/main/java/org/killbill/billing/osgi/api/DefaultPluginsInfoApi.java
index 652d786ed..ab63525d2 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/api/DefaultPluginsInfoApi.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/api/DefaultPluginsInfoApi.java
@@ -29,7 +29,7 @@
import java.util.stream.Collectors;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.osgi.BundleRegistry;
import org.killbill.billing.osgi.BundleRegistry.BundleWithMetadata;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/api/KillbillNodesApiHolder.java b/osgi/src/main/java/org/killbill/billing/osgi/api/KillbillNodesApiHolder.java
index af9e3214e..531a1ea95 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/api/KillbillNodesApiHolder.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/api/KillbillNodesApiHolder.java
@@ -20,7 +20,7 @@
package org.killbill.billing.osgi.api;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.util.nodes.KillbillNodesApi;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/config/OSGIConfig.java b/osgi/src/main/java/org/killbill/billing/osgi/config/OSGIConfig.java
index 48c578df8..d947c970b 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/config/OSGIConfig.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/config/OSGIConfig.java
@@ -215,7 +215,7 @@ public interface OSGIConfig extends KillbillPlatformConfig {
"javax.transaction.xa," +
// XML (sax parser)
"javax.xml," +
- "javax.xml.bind," +
+ "jakarta.xml.bind," +
"javax.xml.validation," +
"javax.xml.namespace," +
"javax.xml.parsers," +
@@ -254,15 +254,15 @@ public interface OSGIConfig extends KillbillPlatformConfig {
"org.xml.sax," +
"org.xml.sax.ext," +
"org.xml.sax.helpers," +
- // javax.servlet and javax.servlet.http are not exported by default - we
+ // jakarta.servlet and jakarta.servlet.http are not exported by default - we
// need the bundles to see them for them to be able to register their servlets.
- // Note: bundles should mark javax.servlet:servlet-api as provided
+ // Note: bundles should mark jakarta.servlet:jakarta.servlet-api as provided.
"sun.misc," +
"sun.misc.unsafe," +
"sun.security," +
"sun.security.util," +
- "javax.servlet;version=4.0," +
- "javax.servlet.http;version=4.0")
+ "jakarta.servlet;version=5.0," +
+ "jakarta.servlet.http;version=5.0")
@Description("Java extension/platform Packages to export from the system bundle")
public String getSystemBundleExportPackagesJava();
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/glue/DefaultOSGIModule.java b/osgi/src/main/java/org/killbill/billing/osgi/glue/DefaultOSGIModule.java
index 8fccb46ec..1f9a0f6bc 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/glue/DefaultOSGIModule.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/glue/DefaultOSGIModule.java
@@ -19,9 +19,9 @@
package org.killbill.billing.osgi.glue;
-import javax.inject.Provider;
-import javax.servlet.Servlet;
-import javax.servlet.http.HttpServlet;
+import jakarta.inject.Provider;
+import jakarta.servlet.Servlet;
+import jakarta.servlet.http.HttpServlet;
import javax.sql.DataSource;
import org.killbill.billing.osgi.BundleRegistry;
@@ -41,7 +41,6 @@
import org.killbill.billing.osgi.api.PluginsInfoApi;
import org.killbill.billing.osgi.api.config.PluginConfigServiceApi;
import org.killbill.billing.osgi.config.OSGIConfig;
-import org.killbill.billing.osgi.http.DefaultHttpService;
import org.killbill.billing.osgi.http.DefaultServletRouter;
import org.killbill.billing.osgi.http.OSGIServlet;
import org.killbill.billing.osgi.pluginconf.DefaultPluginConfigServiceApi;
@@ -52,7 +51,6 @@
import org.killbill.billing.platform.glue.ReferenceableDataSourceSpyProvider;
import org.killbill.commons.embeddeddb.EmbeddedDB;
import org.killbill.commons.jdbi.guice.DaoConfig;
-import org.osgi.service.http.HttpService;
import org.skife.config.AugmentedConfigurationObjectFactory;
import com.google.inject.TypeLiteral;
@@ -115,15 +113,10 @@ protected void installOSGIComponents() {
bind(PluginsInfoApi.class).to(DefaultPluginsInfoApi.class).asEagerSingleton();
}
- protected void installHttpService() {
- bind(HttpService.class).to(DefaultHttpService.class).asEagerSingleton();
- }
-
@Override
protected void configure() {
installConfig();
installOSGIServlet();
- installHttpService();
installDataSource();
installOSGIComponents();
}
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultHttpContext.java b/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultHttpContext.java
deleted file mode 100644
index fcfbca969..000000000
--- a/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultHttpContext.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2010-2014 Ning, Inc.
- * Copyright 2014-2020 Groupon, Inc
- * Copyright 2020-2020 Equinix, Inc
- * Copyright 2014-2020 The Billing Project, LLC
- *
- * The Billing Project licenses this file to you under the Apache License, version 2.0
- * (the "License"); you may not use this file except in compliance with the
- * License. You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-
-package org.killbill.billing.osgi.http;
-
-import java.io.IOException;
-import java.net.URL;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.osgi.service.http.HttpContext;
-
-public class DefaultHttpContext implements HttpContext {
-
- @Override
- public boolean handleSecurity(final HttpServletRequest request, final HttpServletResponse response) throws IOException {
- // Security should have already been handled by Shiro
- return true;
- }
-
- @Override
- public URL getResource(final String name) {
- // Maybe it's in our classpath?
- return DefaultHttpContext.class.getClassLoader().getResource(name);
- }
-
- @Override
- public String getMimeType(final String name) {
- return null;
- }
-}
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultHttpService.java b/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultHttpService.java
deleted file mode 100644
index c75279cce..000000000
--- a/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultHttpService.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright 2010-2014 Ning, Inc.
- * Copyright 2014-2020 Groupon, Inc
- * Copyright 2020-2020 Equinix, Inc
- * Copyright 2014-2020 The Billing Project, LLC
- *
- * The Billing Project licenses this file to you under the Apache License, version 2.0
- * (the "License"); you may not use this file except in compliance with the
- * License. You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-
-package org.killbill.billing.osgi.http;
-
-import java.util.Dictionary;
-import java.util.Hashtable;
-
-import javax.inject.Inject;
-import javax.inject.Singleton;
-import javax.servlet.Servlet;
-import javax.servlet.ServletException;
-
-import org.killbill.billing.osgi.ContextClassLoaderHelper;
-import org.killbill.commons.metrics.api.MetricRegistry;
-import org.osgi.service.http.HttpContext;
-import org.osgi.service.http.HttpService;
-import org.osgi.service.http.NamespaceException;
-
-@Singleton
-public class DefaultHttpService implements HttpService {
-
- private final DefaultServletRouter servletRouter;
- private final MetricRegistry metricsRegistry;
-
- @Inject
- public DefaultHttpService(final DefaultServletRouter servletRouter, final MetricRegistry metricsRegistry) {
- this.servletRouter = servletRouter;
- this.metricsRegistry = metricsRegistry;
- }
-
- @Override
- public void registerServlet(final String alias, final Servlet servlet, final Dictionary initparams, final HttpContext httpContext) throws ServletException {
-
- if (alias == null) {
- throw new IllegalArgumentException("Invalid alias (null)");
- } else if (servlet == null) {
- throw new IllegalArgumentException("Invalid servlet (null)");
- }
- final Servlet wrappedServlet = ContextClassLoaderHelper.getWrappedServiceWithCorrectContextClassLoader(servlet, Servlet.class, alias, metricsRegistry);
-
- servletRouter.registerServiceFromPath(alias, wrappedServlet);
- }
-
- @Override
- public void registerResources(final String alias, final String name, final HttpContext httpContext) throws NamespaceException {
- final Servlet staticServlet = new StaticServlet(httpContext);
- try {
- registerServlet(alias, staticServlet, new Hashtable(), httpContext);
- } catch (final ServletException e) {
- throw new IllegalArgumentException(e);
- }
- }
-
- @Override
- public void unregister(final String alias) {
- servletRouter.unregisterServiceFromPath(alias);
- }
-
- @Override
- public HttpContext createDefaultHttpContext() {
- return new DefaultHttpContext();
- }
-}
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultServletRouter.java b/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultServletRouter.java
index 5eb73e8d6..73f44e6fc 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultServletRouter.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/http/DefaultServletRouter.java
@@ -23,8 +23,8 @@
import java.util.Map;
import java.util.Set;
-import javax.inject.Singleton;
-import javax.servlet.Servlet;
+import jakarta.inject.Singleton;
+import jakarta.servlet.Servlet;
import org.killbill.billing.osgi.api.OSGIServiceDescriptor;
import org.killbill.billing.osgi.api.OSGIServiceRegistration;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/http/OSGIServlet.java b/osgi/src/main/java/org/killbill/billing/osgi/http/OSGIServlet.java
index bbac0088b..ae2861a14 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/http/OSGIServlet.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/http/OSGIServlet.java
@@ -22,15 +22,15 @@
import java.io.IOException;
import java.util.Vector;
-import javax.inject.Inject;
-import javax.inject.Singleton;
-import javax.servlet.Servlet;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletRequestWrapper;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
+import jakarta.servlet.Servlet;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequestWrapper;
+import jakarta.servlet.http.HttpServletResponse;
import org.killbill.commons.utils.annotation.VisibleForTesting;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/http/StaticServlet.java b/osgi/src/main/java/org/killbill/billing/osgi/http/StaticServlet.java
index e0da4dc71..59df89dec 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/http/StaticServlet.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/http/StaticServlet.java
@@ -23,12 +23,12 @@
import java.io.InputStream;
import java.net.URL;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletRequestWrapper;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequestWrapper;
+import jakarta.servlet.http.HttpServletResponse;
import org.osgi.service.http.HttpContext;
diff --git a/osgi/src/main/java/org/killbill/billing/osgi/pluginconf/PluginFinder.java b/osgi/src/main/java/org/killbill/billing/osgi/pluginconf/PluginFinder.java
index 63f76d5d0..b18529cad 100644
--- a/osgi/src/main/java/org/killbill/billing/osgi/pluginconf/PluginFinder.java
+++ b/osgi/src/main/java/org/killbill/billing/osgi/pluginconf/PluginFinder.java
@@ -37,7 +37,7 @@
import java.util.Properties;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.killbill.billing.osgi.api.config.PluginConfig;
import org.killbill.billing.osgi.api.config.PluginJavaConfig;
diff --git a/osgi/src/test/java/org/killbill/billing/osgi/http/TestOSGIServlet.java b/osgi/src/test/java/org/killbill/billing/osgi/http/TestOSGIServlet.java
index 677613c4e..8963bda7c 100644
--- a/osgi/src/test/java/org/killbill/billing/osgi/http/TestOSGIServlet.java
+++ b/osgi/src/test/java/org/killbill/billing/osgi/http/TestOSGIServlet.java
@@ -22,14 +22,14 @@
import java.io.IOException;
import java.util.concurrent.atomic.AtomicLong;
-import javax.servlet.Servlet;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Servlet;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.killbill.billing.osgi.ContextClassLoaderHelper;
import org.killbill.commons.metrics.api.MetricRegistry;
diff --git a/platform-api/pom.xml b/platform-api/pom.xml
index e8fca26c7..65b9b77b2 100644
--- a/platform-api/pom.xml
+++ b/platform-api/pom.xml
@@ -22,11 +22,11 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-api
jar
killbill-platform-api
-
+
diff --git a/platform-test/pom.xml b/platform-test/pom.xml
index c14e548f4..34336aae5 100644
--- a/platform-test/pom.xml
+++ b/platform-test/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-test
@@ -78,8 +78,8 @@
test
- javax.inject
- javax.inject
+ jakarta.inject
+ jakarta.inject-api
org.antlr
@@ -278,8 +278,8 @@
initialize
-
-
+
+
diff --git a/platform-test/spotbugs-exclude.xml b/platform-test/spotbugs-exclude.xml
index d613dd5ed..14bbe1193 100644
--- a/platform-test/spotbugs-exclude.xml
+++ b/platform-test/spotbugs-exclude.xml
@@ -38,5 +38,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/platform-test/src/main/java/org/killbill/billing/platform/test/glue/TestPlatformModuleWithEmbeddedDB.java b/platform-test/src/main/java/org/killbill/billing/platform/test/glue/TestPlatformModuleWithEmbeddedDB.java
index 438fc6cbb..8531ca41a 100644
--- a/platform-test/src/main/java/org/killbill/billing/platform/test/glue/TestPlatformModuleWithEmbeddedDB.java
+++ b/platform-test/src/main/java/org/killbill/billing/platform/test/glue/TestPlatformModuleWithEmbeddedDB.java
@@ -20,8 +20,8 @@
package org.killbill.billing.platform.test.glue;
import javax.annotation.Nullable;
-import javax.inject.Named;
-import javax.inject.Singleton;
+import jakarta.inject.Named;
+import jakarta.inject.Singleton;
import javax.sql.DataSource;
import org.killbill.billing.osgi.api.OSGIConfigProperties;
diff --git a/platform-test/src/test/java/org/killbill/billing/beatrix/integration/osgi/TestOSGIBase.java b/platform-test/src/test/java/org/killbill/billing/beatrix/integration/osgi/TestOSGIBase.java
index 184032355..fcf70c9f0 100644
--- a/platform-test/src/test/java/org/killbill/billing/beatrix/integration/osgi/TestOSGIBase.java
+++ b/platform-test/src/test/java/org/killbill/billing/beatrix/integration/osgi/TestOSGIBase.java
@@ -21,8 +21,8 @@
import java.util.concurrent.Callable;
-import javax.inject.Inject;
-import javax.inject.Named;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
import javax.sql.DataSource;
import org.killbill.billing.beatrix.integration.osgi.glue.TestIntegrationModule;
diff --git a/pom.xml b/pom.xml
index 089dc1c2f..bceeb47ff 100644
--- a/pom.xml
+++ b/pom.xml
@@ -56,10 +56,123 @@
true
false
+ 1.12.0
+ 7.0.0
+
+ 3.0.6
+
+ 2.1.4
+ 2.1.1
+ 2.0.1
+ 5.0.0
+
+ 3.0.2
+ 3.0.0
+
+ 3.30.2-GA
+
+ 4.0.4
+
+ 4.0.4
+
+ 3.0.18
+ 11.0.24
+ 0.55.0-370fa77-SNAPSHOT
+ 5.2.0-a5c0ade-SNAPSHOT
+ 0.27.0
+ 0.27.0
false
+ 21
+ 4.9.8.3
+
+ com.google.inject
+ guice
+ ${guice.version}
+
+
+ com.google.inject.extensions
+ guice-servlet
+ ${guice.version}
+
+
+ jakarta.activation
+ jakarta.activation-api
+ ${jakarta.activation-api.version}
+
+
+ jakarta.inject
+ jakarta.inject-api
+ ${jakarta.inject-api.version}
+
+
+ jakarta.validation
+ jakarta.validation-api
+ ${jakarta.validation-api.version}
+
+
+ jakarta.xml.bind
+ jakarta.xml.bind-api
+ ${jaxb-api.version}
+
+
+ org.glassfish.hk2
+ guice-bridge
+ ${hk2.version}
+
+
+ org.glassfish.hk2
+ hk2-api
+ ${hk2.version}
+
+
+ org.glassfish.hk2
+ hk2-locator
+ ${hk2.version}
+
+
+ org.glassfish.jaxb
+ jaxb-runtime
+ ${jaxb-runtime.version}
+
+
+ com.sun.activation
+ jakarta.activation
+
+
+
+
+ org.glassfish.jersey.containers
+ jersey-container-servlet-core
+ ${jersey.version}
+
+
+ org.glassfish.jersey.core
+ jersey-client
+ ${jersey.version}
+
+
+ org.glassfish.jersey.core
+ jersey-common
+ ${jersey.version}
+
+
+ org.glassfish.jersey.core
+ jersey-server
+ ${jersey.version}
+
+
+ org.glassfish.jersey.inject
+ jersey-hk2
+ ${jersey.version}
+
+
+ org.javassist
+ javassist
+ ${javassist.version}
+
org.kill-bill.billing
killbill-platform-api
@@ -193,6 +306,31 @@
killbill-platform-test
${project.version}
+
+ org.kill-bill.commons
+ killbill-jooby
+ ${killbill-jooby.version}
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ ${spotbugs-maven-plugin.version}
+
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+
+
+ org.codehaus.mojo
+ extra-enforcer-rules
+ ${extra-enforcer-rules.version}
+
+
+
+
+
diff --git a/server/pom.xml b/server/pom.xml
index 0b8e3d9cc..b305951fa 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -22,7 +22,7 @@
org.kill-bill.billing
killbill-platform
- 0.41.20-SNAPSHOT
+ 0.42.0-SNAPSHOT
../pom.xml
killbill-platform-server
@@ -80,12 +80,12 @@
- jakarta.servlet
- jakarta.servlet-api
+ jakarta.inject
+ jakarta.inject-api
- javax.inject
- javax.inject
+ jakarta.servlet
+ jakarta.servlet-api
joda-time
@@ -115,6 +115,11 @@
org.slf4j
slf4j-api
+
+
+ org.eclipse.jetty.toolchain
+ jetty-jakarta-servlet-api
+
diff --git a/server/src/main/java/org/killbill/billing/server/filters/KillbillGuiceFilter.java b/server/src/main/java/org/killbill/billing/server/filters/KillbillGuiceFilter.java
index 66aea5ec6..1ae3483ca 100644
--- a/server/src/main/java/org/killbill/billing/server/filters/KillbillGuiceFilter.java
+++ b/server/src/main/java/org/killbill/billing/server/filters/KillbillGuiceFilter.java
@@ -19,8 +19,8 @@
package org.killbill.billing.server.filters;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
import org.killbill.billing.server.healthchecks.KillbillHealthcheck;
import org.killbill.billing.server.updatechecker.UpdateChecker;
diff --git a/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillHealthcheck.java b/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillHealthcheck.java
index 3ca7e5000..c75c0b8cb 100644
--- a/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillHealthcheck.java
+++ b/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillHealthcheck.java
@@ -24,8 +24,8 @@
import java.util.concurrent.atomic.AtomicBoolean;
import javax.annotation.Nullable;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.killbill.billing.osgi.api.OSGIServiceRegistration;
import org.killbill.billing.osgi.api.ServiceDiscoveryRegistry;
diff --git a/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillPluginsHealthcheck.java b/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillPluginsHealthcheck.java
index 67a056c61..e50c18f27 100644
--- a/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillPluginsHealthcheck.java
+++ b/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillPluginsHealthcheck.java
@@ -23,8 +23,8 @@
import java.util.Map;
import javax.annotation.Nullable;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.killbill.billing.osgi.api.Healthcheck;
import org.killbill.billing.osgi.api.Healthcheck.HealthStatus;
diff --git a/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillQueuesHealthcheck.java b/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillQueuesHealthcheck.java
index bf356a477..3e99e5677 100644
--- a/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillQueuesHealthcheck.java
+++ b/server/src/main/java/org/killbill/billing/server/healthchecks/KillbillQueuesHealthcheck.java
@@ -26,9 +26,9 @@
import java.util.Queue;
import java.util.concurrent.atomic.AtomicBoolean;
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
+import jakarta.inject.Singleton;
import org.apache.commons.math3.stat.regression.SimpleRegression;
import org.joda.time.DateTime;
diff --git a/server/src/main/java/org/killbill/billing/server/listeners/KillbillPlatformGuiceListener.java b/server/src/main/java/org/killbill/billing/server/listeners/KillbillPlatformGuiceListener.java
index c8cdbbcd0..5625a1bc3 100644
--- a/server/src/main/java/org/killbill/billing/server/listeners/KillbillPlatformGuiceListener.java
+++ b/server/src/main/java/org/killbill/billing/server/listeners/KillbillPlatformGuiceListener.java
@@ -23,8 +23,8 @@
import java.net.URISyntaxException;
import java.util.List;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletContextEvent;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletContextEvent;
import org.killbill.billing.lifecycle.api.BusService;
import org.killbill.billing.lifecycle.api.Lifecycle;
diff --git a/server/src/main/java/org/killbill/billing/server/modules/DistributedClockProvider.java b/server/src/main/java/org/killbill/billing/server/modules/DistributedClockProvider.java
index 71dae59ed..6068218e4 100644
--- a/server/src/main/java/org/killbill/billing/server/modules/DistributedClockProvider.java
+++ b/server/src/main/java/org/killbill/billing/server/modules/DistributedClockProvider.java
@@ -19,8 +19,8 @@
package org.killbill.billing.server.modules;
-import javax.inject.Inject;
-import javax.inject.Provider;
+import jakarta.inject.Inject;
+import jakarta.inject.Provider;
import org.killbill.billing.server.config.KillbillServerConfig;
import org.killbill.clock.DistributedClockMock;
diff --git a/server/src/main/java/org/killbill/billing/server/modules/EmbeddedDBProvider.java b/server/src/main/java/org/killbill/billing/server/modules/EmbeddedDBProvider.java
index 0e3f49416..1ab528add 100644
--- a/server/src/main/java/org/killbill/billing/server/modules/EmbeddedDBProvider.java
+++ b/server/src/main/java/org/killbill/billing/server/modules/EmbeddedDBProvider.java
@@ -31,8 +31,8 @@
import java.util.LinkedList;
import java.util.List;
-import javax.inject.Inject;
-import javax.inject.Provider;
+import jakarta.inject.Inject;
+import jakarta.inject.Provider;
import org.killbill.billing.server.dao.EmbeddedDBFactory;
import org.killbill.commons.embeddeddb.EmbeddedDB;
diff --git a/server/src/main/java/org/killbill/billing/server/modules/KillbillPlatformModule.java b/server/src/main/java/org/killbill/billing/server/modules/KillbillPlatformModule.java
index c7dc1a277..162c6485f 100644
--- a/server/src/main/java/org/killbill/billing/server/modules/KillbillPlatformModule.java
+++ b/server/src/main/java/org/killbill/billing/server/modules/KillbillPlatformModule.java
@@ -19,10 +19,10 @@
package org.killbill.billing.server.modules;
-import javax.inject.Named;
-import javax.inject.Provider;
-import javax.inject.Singleton;
-import javax.servlet.ServletContext;
+import jakarta.inject.Named;
+import jakarta.inject.Provider;
+import jakarta.inject.Singleton;
+import jakarta.servlet.ServletContext;
import javax.sql.DataSource;
import org.killbill.billing.lifecycle.glue.BusModule;
diff --git a/server/src/main/java/org/killbill/billing/server/modules/RODBIProvider.java b/server/src/main/java/org/killbill/billing/server/modules/RODBIProvider.java
index 80f0ab05a..29f876243 100644
--- a/server/src/main/java/org/killbill/billing/server/modules/RODBIProvider.java
+++ b/server/src/main/java/org/killbill/billing/server/modules/RODBIProvider.java
@@ -19,8 +19,8 @@
package org.killbill.billing.server.modules;
-import javax.inject.Inject;
-import javax.inject.Named;
+import jakarta.inject.Inject;
+import jakarta.inject.Named;
import javax.sql.DataSource;
import org.killbill.commons.jdbi.guice.DBIProvider;
diff --git a/server/src/main/java/org/killbill/billing/server/updatechecker/ClientInfo.java b/server/src/main/java/org/killbill/billing/server/updatechecker/ClientInfo.java
index 447092e6f..52aa201fb 100644
--- a/server/src/main/java/org/killbill/billing/server/updatechecker/ClientInfo.java
+++ b/server/src/main/java/org/killbill/billing/server/updatechecker/ClientInfo.java
@@ -22,7 +22,7 @@
import java.net.InetAddress;
import java.util.Objects;
-import javax.servlet.ServletContext;
+import jakarta.servlet.ServletContext;
import org.killbill.commons.utils.StandardSystemProperty;
import org.killbill.commons.utils.Strings;
diff --git a/server/src/main/java/org/killbill/billing/server/updatechecker/UpdateChecker.java b/server/src/main/java/org/killbill/billing/server/updatechecker/UpdateChecker.java
index f4e5d4d0e..1b023152d 100644
--- a/server/src/main/java/org/killbill/billing/server/updatechecker/UpdateChecker.java
+++ b/server/src/main/java/org/killbill/billing/server/updatechecker/UpdateChecker.java
@@ -21,7 +21,7 @@
import java.io.IOException;
-import javax.servlet.ServletContext;
+import jakarta.servlet.ServletContext;
import org.killbill.billing.server.config.UpdateCheckConfig;
import org.skife.config.ConfigSource;