diff --git a/pom.xml b/pom.xml
index 63c098e4aa..cefadefe64 100644
--- a/pom.xml
+++ b/pom.xml
@@ -144,7 +144,7 @@
org.jacoco
org.jacoco.agent
- 0.8.6
+ 0.8.11
runtime
test
@@ -249,7 +249,7 @@
org.jacoco
jacoco-maven-plugin
- 0.8.6
+ 0.8.11
false
diff --git a/trpc-core/pom.xml b/trpc-core/pom.xml
index d8a5b4eec8..6060499e39 100644
--- a/trpc-core/pom.xml
+++ b/trpc-core/pom.xml
@@ -229,6 +229,10 @@
commons-codec
commons-codec
+
+ jakarta.annotation
+ jakarta.annotation-api
+
diff --git a/trpc-core/src/main/java/com/tencent/trpc/core/utils/CollectionUtils.java b/trpc-core/src/main/java/com/tencent/trpc/core/utils/CollectionUtils.java
index ea3a3c5acf..36a22683c9 100644
--- a/trpc-core/src/main/java/com/tencent/trpc/core/utils/CollectionUtils.java
+++ b/trpc-core/src/main/java/com/tencent/trpc/core/utils/CollectionUtils.java
@@ -19,8 +19,8 @@
import java.util.Set;
import java.util.function.BinaryOperator;
import java.util.function.Supplier;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nonnull;
+import jakarta.annotation.Nullable;
/**
* Collection utility.
diff --git a/trpc-dependencies/trpc-dependencies-bom/pom.xml b/trpc-dependencies/trpc-dependencies-bom/pom.xml
index 4317974569..3339ebbab0 100644
--- a/trpc-dependencies/trpc-dependencies-bom/pom.xml
+++ b/trpc-dependencies/trpc-dependencies-bom/pom.xml
@@ -90,19 +90,21 @@
2.1.1
2.0.1.Final
8.1.13.v20181017
- 9.4.55.v20240627
+ 11.0.21
2.7
2.4.14
4.13.2
1.3.5
1.2.1
3.0.2
+ 6.0.0
+ 2.1.1
2.3.2
3.28.0-GA
3.1.0
3.0.2
1.2.13
- 2.17.1
+ 2.22.1
1.3.3
3.1.0
3.0.0
@@ -136,9 +138,9 @@
1.7.36
2.0
1.1.10.4
- 5.3.27
- 2.7.12
- 3.1.5
+ 6.1.21
+ 3.3.12
+ 4.1.4
2.12.4
3.8.4
@@ -473,6 +475,16 @@
jakarta.validation-api
${jakarta.validation-api.version}
+
+ jakarta.servlet
+ jakarta.servlet-api
+ ${jakarta.servlet.version}
+
+
+ jakarta.annotation
+ jakarta.annotation-api
+ ${jakarta.annotation.version}
+
jakarta.xml.bind
jakarta.xml.bind-api
diff --git a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcAttributesGetter.java b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcAttributesGetter.java
index 4b58a0e64c..27e9077c06 100644
--- a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcAttributesGetter.java
+++ b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcAttributesGetter.java
@@ -13,7 +13,7 @@
import com.tencent.trpc.core.rpc.Request;
import io.opentelemetry.instrumentation.api.instrumenter.rpc.RpcAttributesGetter;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* TRPC general attribute setting class
diff --git a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcHeaderGetter.java b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcHeaderGetter.java
index 302b7c1122..77c637c552 100644
--- a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcHeaderGetter.java
+++ b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcHeaderGetter.java
@@ -19,7 +19,7 @@
import io.opentelemetry.context.propagation.TextMapGetter;
import java.util.NoSuchElementException;
import java.util.ServiceLoader;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* Service request header trace parsing adaptation class
diff --git a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcRequestExtractor.java b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcRequestExtractor.java
index 0d85075505..95dc5cc865 100644
--- a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcRequestExtractor.java
+++ b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/TrpcRequestExtractor.java
@@ -24,7 +24,7 @@
import java.util.Map;
import java.util.NoSuchElementException;
import java.util.ServiceLoader;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* TRPC request parser for parsing and adding additional request information to the context
diff --git a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/metrics/Serializer.java b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/metrics/Serializer.java
index f81607cbaf..13e99c6b19 100644
--- a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/metrics/Serializer.java
+++ b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/metrics/Serializer.java
@@ -41,7 +41,7 @@
import java.util.function.BiConsumer;
import java.util.function.Predicate;
import java.util.stream.Collectors;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* Serializes metrics into Prometheus exposition formats.
diff --git a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcRequestGetter.java b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcRequestGetter.java
index 95957323a2..635bf391a9 100644
--- a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcRequestGetter.java
+++ b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcRequestGetter.java
@@ -15,7 +15,7 @@
import com.tencent.trpc.opentelemetry.spi.ITrpcRequestGetter;
import java.nio.charset.StandardCharsets;
import java.util.Collections;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* Default implementation of {@link ITrpcRequestGetter}
diff --git a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcResponseExtractor.java b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcResponseExtractor.java
index 58e6ee606d..eaee9b623d 100644
--- a/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcResponseExtractor.java
+++ b/trpc-opentelemetry/src/main/java/com/tencent/trpc/opentelemetry/sdk/support/DefaultTrpcResponseExtractor.java
@@ -18,7 +18,7 @@
import com.tencent.trpc.opentelemetry.spi.ITrpcResponseExtractor;
import java.util.HashMap;
import java.util.Map;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* Default implementation of {@link ITrpcResponseExtractor}
diff --git a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/ErrorResponse.java b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/ErrorResponse.java
index 0eca7e9482..b1f494ad1d 100644
--- a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/ErrorResponse.java
+++ b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/ErrorResponse.java
@@ -14,7 +14,7 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import java.util.Optional;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
/**
diff --git a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/HttpCodec.java b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/HttpCodec.java
index 77f3a258a5..7920937e6e 100644
--- a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/HttpCodec.java
+++ b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/HttpCodec.java
@@ -24,9 +24,9 @@
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletOutputStream;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.http.HttpHeaders;
diff --git a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletRequestWrapper.java b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletRequestWrapper.java
index eedf3d1260..49a63b5f23 100644
--- a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletRequestWrapper.java
+++ b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletRequestWrapper.java
@@ -13,8 +13,8 @@
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletRequestWrapper;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequestWrapper;
/**
* The HTTP requests encapsulated by TRPC cannot be serialized.
diff --git a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletResponseWrapper.java b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletResponseWrapper.java
index 5d1735c64f..623676b073 100644
--- a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletResponseWrapper.java
+++ b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/common/TrpcServletResponseWrapper.java
@@ -13,8 +13,8 @@
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpServletResponseWrapper;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponseWrapper;
/**
* The HTTP responses encapsulated by TRPC cannot be serialized.
diff --git a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutor.java b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutor.java
index 7708bc2360..95524176f7 100644
--- a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutor.java
+++ b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutor.java
@@ -46,8 +46,8 @@
import java.util.concurrent.CompletionStage;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpStatus;
diff --git a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutor.java b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutor.java
index 471a83177a..95cf2a786a 100644
--- a/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutor.java
+++ b/trpc-proto/trpc-proto-http/src/main/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutor.java
@@ -25,8 +25,8 @@
import com.tencent.trpc.proto.http.common.HttpConstants;
import com.tencent.trpc.transport.http.HttpExecutor;
import java.util.Optional;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpStatus;
diff --git a/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutorTest.java b/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutorTest.java
index 7d6f800618..53db1fe326 100644
--- a/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutorTest.java
+++ b/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/AbstractHttpExecutorTest.java
@@ -20,7 +20,7 @@
import com.tencent.trpc.core.rpc.RpcInvocation;
import com.tencent.trpc.core.rpc.common.RpcMethodInfo;
import com.tencent.trpc.proto.http.common.HttpConstants;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
diff --git a/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutorTest.java b/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutorTest.java
index aeefd009c6..8dae7e7d7d 100644
--- a/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutorTest.java
+++ b/trpc-proto/trpc-proto-http/src/test/java/com/tencent/trpc/proto/http/server/DefaultHttpExecutorTest.java
@@ -21,17 +21,9 @@
import com.tencent.trpc.core.rpc.def.DefProviderInvoker;
import com.tencent.trpc.core.utils.NetUtils;
import com.tencent.trpc.proto.standard.common.TRPCProtocol;
-import java.net.InetSocketAddress;
-import javax.ws.rs.HttpMethod;
-import org.eclipse.jetty.http.HttpFields;
-import org.eclipse.jetty.http.HttpURI;
-import org.eclipse.jetty.http.HttpVersion;
-import org.eclipse.jetty.http.MetaData;
-import org.eclipse.jetty.server.HttpChannel;
-import org.eclipse.jetty.server.HttpConfiguration;
-import org.eclipse.jetty.server.HttpOutput;
-import org.eclipse.jetty.server.Request;
-import org.eclipse.jetty.server.Response;
+
+import java.net.HttpURLConnection;
+import java.net.URL;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.ServerConnector;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
@@ -59,7 +51,7 @@ private static ProviderInvoker buildProviderInvoker() {
}
@Test
- public void testRegist() {
+ public void testRegist() throws Exception {
HTTP_EXECUTOR.register(INVOKER);
QueuedThreadPool threadPool = new QueuedThreadPool();
@@ -76,23 +68,15 @@ public void testRegist() {
connector.setAcceptQueueSize(60);
server.addConnector(connector);
- HttpChannel httpChannel = new HttpChannel(connector, new HttpConfiguration(),
- null, null);
- Request request = new Request(httpChannel, null);
- request.setMetaData(
- new MetaData.Request(HttpMethod.GET,
- new HttpURI(
- "http://localhost:8080/hello/trpc.test.rpc.Hello/sayHello?verison=1"),
- HttpVersion.HTTP_1_0, new HttpFields()));
- request.setMethod(HttpMethod.GET);
- request.setPathInfo("/trpc.test.rpc.Hello/sayHello");
- request.setRemoteAddr(new InetSocketAddress("127.0.0.1", 8080));
-
- Response response = new Response(new HttpChannel(connector, new HttpConfiguration(),
- null, null),
- new HttpOutput(new HttpChannel(connector, new HttpConfiguration(), null,
- null)));
- HTTP_EXECUTOR.execute(request, response);
+ server.start();
+ try {
+ URL url = new URL("http://localhost:8080/hello/trpc.test.rpc.Hello/sayHello?verison=1");
+ HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+ conn.setRequestMethod("GET");
+
+ } finally {
+ server.stop();
+ }
}
@Test
diff --git a/trpc-proto/trpc-proto-standard/src/main/java/com/tencent/trpc/proto/standard/stream/StreamRemoteSubscriber.java b/trpc-proto/trpc-proto-standard/src/main/java/com/tencent/trpc/proto/standard/stream/StreamRemoteSubscriber.java
index c15e0ad1e4..4c5dcc700a 100644
--- a/trpc-proto/trpc-proto-standard/src/main/java/com/tencent/trpc/proto/standard/stream/StreamRemoteSubscriber.java
+++ b/trpc-proto/trpc-proto-standard/src/main/java/com/tencent/trpc/proto/standard/stream/StreamRemoteSubscriber.java
@@ -23,7 +23,7 @@
import io.netty.buffer.ByteBuf;
import java.util.Objects;
import java.util.concurrent.atomic.AtomicIntegerFieldUpdater;
-import javax.annotation.Nonnull;
+import jakarta.annotation.Nonnull;
import javax.annotation.concurrent.ThreadSafe;
import org.reactivestreams.Subscription;
import reactor.core.publisher.BaseSubscriber;
diff --git a/trpc-selector/trpc-selector-open-polaris/pom.xml b/trpc-selector/trpc-selector-open-polaris/pom.xml
index dff8a693e0..add6b7cee2 100644
--- a/trpc-selector/trpc-selector-open-polaris/pom.xml
+++ b/trpc-selector/trpc-selector-open-polaris/pom.xml
@@ -39,9 +39,14 @@
slf4j-simple
- javax.servlet
- javax.servlet-api
+ jakarta.servlet
+ jakarta.servlet-api
+
+ jakarta.annotation
+ jakarta.annotation-api
+
+
com.tencent.trpc
trpc-proto-http
diff --git a/trpc-selector/trpc-selector-open-polaris/src/main/java/com/tencent/trpc/selector/polaris/PolarisSelector.java b/trpc-selector/trpc-selector-open-polaris/src/main/java/com/tencent/trpc/selector/polaris/PolarisSelector.java
index 99f24a6982..e2170ac5a5 100644
--- a/trpc-selector/trpc-selector-open-polaris/src/main/java/com/tencent/trpc/selector/polaris/PolarisSelector.java
+++ b/trpc-selector/trpc-selector-open-polaris/src/main/java/com/tencent/trpc/selector/polaris/PolarisSelector.java
@@ -69,7 +69,7 @@
import java.util.concurrent.CompletionStage;
import java.util.concurrent.Executor;
import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
/**
* Base open source polaris selector
diff --git a/trpc-selector/trpc-selector-open-polaris/src/test/java/com/tencent/trpc/selector/open/polaris/RequestMetadataTest.java b/trpc-selector/trpc-selector-open-polaris/src/test/java/com/tencent/trpc/selector/open/polaris/RequestMetadataTest.java
index aefa4180c4..a0cafdefac 100644
--- a/trpc-selector/trpc-selector-open-polaris/src/test/java/com/tencent/trpc/selector/open/polaris/RequestMetadataTest.java
+++ b/trpc-selector/trpc-selector-open-polaris/src/test/java/com/tencent/trpc/selector/open/polaris/RequestMetadataTest.java
@@ -21,7 +21,7 @@
import java.net.InetSocketAddress;
import java.net.UnknownHostException;
import java.util.concurrent.ConcurrentMap;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
diff --git a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/context/configuration/TRpcConfigurationApplicationContextInitializer.java b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/context/configuration/TRpcConfigurationApplicationContextInitializer.java
index 093187c08b..7e66868c04 100644
--- a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/context/configuration/TRpcConfigurationApplicationContextInitializer.java
+++ b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/context/configuration/TRpcConfigurationApplicationContextInitializer.java
@@ -21,7 +21,7 @@
import com.tencent.trpc.spring.boot.starters.context.configuration.bind.TRpcConfigurationBindResult;
import com.tencent.trpc.spring.boot.starters.context.configuration.bind.TRpcConfigurationBindResultReporter;
import com.tencent.trpc.spring.boot.starters.context.configuration.bind.TRpcConfigurationBinder;
-import javax.annotation.Nonnull;
+import jakarta.annotation.Nonnull;
import org.springframework.context.ApplicationContextInitializer;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.core.Ordered;
diff --git a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/env/TRpcConfigurationEnvironmentPostProcessor.java b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/env/TRpcConfigurationEnvironmentPostProcessor.java
index d051af36bc..bdd18f2a54 100644
--- a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/env/TRpcConfigurationEnvironmentPostProcessor.java
+++ b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/main/java/com/tencent/trpc/spring/boot/starters/env/TRpcConfigurationEnvironmentPostProcessor.java
@@ -20,7 +20,7 @@
import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import javax.annotation.Nonnull;
+import jakarta.annotation.Nonnull;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.context.config.ConfigDataEnvironmentPostProcessor;
diff --git a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/DemoServiceImpl.java b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/DemoServiceImpl.java
index 37ffcd5851..9794413533 100644
--- a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/DemoServiceImpl.java
+++ b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/DemoServiceImpl.java
@@ -16,7 +16,7 @@
import com.tencent.trpc.spring.boot.starters.test.GreeterService;
import com.tencent.trpc.spring.boot.starters.test.HelloRequestProtocol.HelloRequest;
import com.tencent.trpc.spring.boot.starters.test.HelloRequestProtocol.HelloResponse;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
diff --git a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/EnableAnnotationTest.java b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/EnableAnnotationTest.java
index f9afe47748..22c06a6c78 100644
--- a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/EnableAnnotationTest.java
+++ b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/annotation/EnableAnnotationTest.java
@@ -18,7 +18,7 @@
import com.tencent.trpc.spring.boot.starters.test.HelloRequestProtocol.HelloRequest;
import com.tencent.trpc.spring.boot.starters.test.HelloRequestProtocol.HelloResponse;
import com.tencent.trpc.spring.boot.starters.test.SpringBootTestApplication;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
diff --git a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/test/AutoInjectTestFilter.java b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/test/AutoInjectTestFilter.java
index b59209a221..b7258a118c 100644
--- a/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/test/AutoInjectTestFilter.java
+++ b/trpc-spring-boot-starters/trpc-spring-boot-starter/src/test/java/com/tencent/trpc/spring/boot/starters/test/AutoInjectTestFilter.java
@@ -16,7 +16,7 @@
import com.tencent.trpc.core.rpc.Request;
import com.tencent.trpc.core.rpc.Response;
import java.util.concurrent.CompletionStage;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/filter/TrpcRoutingFilter.java b/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/filter/TrpcRoutingFilter.java
index c76c00f414..074241f4cd 100644
--- a/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/filter/TrpcRoutingFilter.java
+++ b/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/filter/TrpcRoutingFilter.java
@@ -83,7 +83,13 @@ public Mono filter(ServerWebExchange exchange, GatewayFilterChain chain) {
ServerHttpRequest request = exchange.getRequest();
return DataBufferUtils.join(request.getBody())
.map(body -> requestRewriter.resolver(exchange, route, body))
- .map(body -> client.asyncInvoke(request, route, body.asByteBuffer().array()))
+ .map(body -> {
+ java.nio.ByteBuffer byteBuffer = body.asByteBuffer();
+ byte[] bytes = new byte[byteBuffer.remaining()];
+ byteBuffer.get(bytes);
+ byteBuffer.rewind();
+ return client.asyncInvoke(request, route, bytes);
+ })
.flatMap(result -> this.responseRewriter.write(exchange, route.getMetadata(), result));
}
diff --git a/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/rewriter/DefaultTrpcResponseRewriter.java b/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/rewriter/DefaultTrpcResponseRewriter.java
index e5bc2a0a71..bfb022055b 100644
--- a/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/rewriter/DefaultTrpcResponseRewriter.java
+++ b/trpc-spring-support/trpc-spring-cloud-gateway/src/main/java/com/tencent/trpc/spring/cloud/gateway/rewriter/DefaultTrpcResponseRewriter.java
@@ -30,11 +30,13 @@ public Mono write(ServerWebExchange exchange,
Mono result) {
ServerHttpResponse response = exchange.getResponse();
if (result != null) {
- DataBuffer dataBuffer = response.bufferFactory().wrap(result.block());
- logger.info("dataBuffer :{}", dataBuffer.toString(StandardCharsets.UTF_8));
- // Content-Type uses application/json by default
- response.getHeaders().add("Content-Type", MimeTypeUtils.APPLICATION_JSON_VALUE);
- return response.writeWith(Mono.justOrEmpty(dataBuffer));
+ return result.flatMap(bytes -> {
+ DataBuffer dataBuffer = response.bufferFactory().wrap(bytes);
+ logger.info("dataBuffer :{}", dataBuffer.toString(StandardCharsets.UTF_8));
+ // Content-Type uses application/json by default
+ response.getHeaders().add("Content-Type", MimeTypeUtils.APPLICATION_JSON_VALUE);
+ return response.writeWith(Mono.just(dataBuffer));
+ });
}
return Mono.empty();
}
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractExceptionHandlingMethodInterceptor.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractExceptionHandlingMethodInterceptor.java
index 1e2168440e..c9944fd243 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractExceptionHandlingMethodInterceptor.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractExceptionHandlingMethodInterceptor.java
@@ -17,8 +17,8 @@
import com.tencent.trpc.spring.exception.api.ExceptionResultTransformer;
import java.lang.reflect.Method;
import java.util.function.Supplier;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nonnull;
+import jakarta.annotation.Nullable;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.springframework.core.Ordered;
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractTRpcServiceAdvisor.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractTRpcServiceAdvisor.java
index 2e74942808..293f9f1d1a 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractTRpcServiceAdvisor.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/aop/AbstractTRpcServiceAdvisor.java
@@ -13,7 +13,7 @@
import com.tencent.trpc.core.rpc.anno.TRpcMethod;
import com.tencent.trpc.core.rpc.anno.TRpcService;
-import javax.annotation.Nonnull;
+import jakarta.annotation.Nonnull;
import org.springframework.aop.Pointcut;
import org.springframework.aop.support.AbstractPointcutAdvisor;
import org.springframework.aop.support.ComposablePointcut;
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/context/support/BeanFactoryAwareSupport.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/context/support/BeanFactoryAwareSupport.java
index cfbcd08c21..0718dc9a14 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/context/support/BeanFactoryAwareSupport.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/context/support/BeanFactoryAwareSupport.java
@@ -11,7 +11,7 @@
package com.tencent.trpc.spring.context.support;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandler.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandler.java
index ed60806154..a98229e31a 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandler.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandler.java
@@ -12,7 +12,7 @@
package com.tencent.trpc.spring.exception.api;
import java.lang.reflect.Method;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* Defines the method to handle exceptions thrown by tRPC methods.
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandlerResolver.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandlerResolver.java
index 91f8af46f6..8ecbae3291 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandlerResolver.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/api/ExceptionHandlerResolver.java
@@ -12,7 +12,7 @@
package com.tencent.trpc.spring.exception.api;
import java.lang.reflect.Method;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
/**
* Resolver interface that resolve the exception thrown by a tRPC service invocation to
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionAdvisingPostProcessor.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionAdvisingPostProcessor.java
index c34e005c17..4633ac7894 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionAdvisingPostProcessor.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionAdvisingPostProcessor.java
@@ -17,7 +17,7 @@
import com.tencent.trpc.spring.exception.api.ExceptionResultTransformer;
import java.lang.reflect.Method;
import java.util.function.Supplier;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
import org.springframework.aop.framework.autoproxy.AbstractBeanFactoryAwareAdvisingPostProcessor;
import org.springframework.beans.factory.BeanCreationException;
import org.springframework.beans.factory.BeanFactory;
diff --git a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionInterceptor.java b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionInterceptor.java
index d622ba145b..1c85c0acda 100644
--- a/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionInterceptor.java
+++ b/trpc-spring-support/trpc-spring/src/main/java/com/tencent/trpc/spring/exception/support/HandleExceptionInterceptor.java
@@ -24,7 +24,7 @@
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Supplier;
-import javax.annotation.Nullable;
+import jakarta.annotation.Nullable;
import org.aopalliance.intercept.MethodInterceptor;
import org.springframework.core.annotation.AnnotatedElementUtils;
import org.springframework.util.StringUtils;
diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestClientFilter.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestClientFilter.java
index d9087bcf95..2cdbf99a4b 100644
--- a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestClientFilter.java
+++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestClientFilter.java
@@ -17,8 +17,9 @@
import com.tencent.trpc.core.rpc.Response;
import com.tencent.trpc.spring.context.TRpcConfigAutoRegistryTest.TestService;
import java.util.concurrent.CompletionStage;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
public class AutoInjectTestClientFilter implements Filter {
@@ -31,6 +32,7 @@ public TestService getMyTestService1() {
}
@Autowired
+ @Qualifier("myTestService1")
public void setMyTestService1(TestService myTestService1) {
this.myTestService1 = myTestService1;
}
diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestServerFilter.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestServerFilter.java
index 2923dd4df4..9a9ff2ac10 100644
--- a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestServerFilter.java
+++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/AutoInjectTestServerFilter.java
@@ -18,7 +18,7 @@
import com.tencent.trpc.spring.context.TRpcConfigAutoRegistryTest.InjectByFieldBean;
import com.tencent.trpc.spring.context.TRpcConfigAutoRegistryTest.InjectBySetterBean;
import java.util.concurrent.CompletionStage;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;
public class AutoInjectTestServerFilter implements Filter {
diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/TRpcConfigAutoRegistryTest.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/TRpcConfigAutoRegistryTest.java
index e9ca53fcaa..618d7c28a3 100644
--- a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/TRpcConfigAutoRegistryTest.java
+++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/TRpcConfigAutoRegistryTest.java
@@ -25,7 +25,7 @@
import com.tencent.trpc.spring.context.configuration.TRpcConfigManagerCustomizer;
import com.tencent.trpc.spring.test.TRpcConfigManagerTestUtils;
import com.tencent.trpc.spring.test.TestSpringApplication;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -350,7 +350,9 @@ public InjectByConstructorBean(TestService testService1, TestService testService
}
@Autowired
- public InjectByConstructorBean(TestService myTestService1, TestService myTestService2,
+ public InjectByConstructorBean(
+ @Qualifier("myTestService1") TestService myTestService1,
+ @Qualifier("myTestService2") TestService myTestService2,
@Qualifier("myTestService1") TestService myTestService) {
this.myTestService1 = myTestService1;
this.myTestService2 = myTestService2;
@@ -398,6 +400,8 @@ public TestService getTestService1() {
return testService1;
}
+ @Autowired
+ @Qualifier("myTestService1")
public void setTestService1(TestService testService1) {
this.testService1 = testService1;
}
@@ -406,6 +410,8 @@ public TestService getTestService2() {
return testService2;
}
+ @Autowired
+ @Qualifier("myTestService2")
public void setTestService2(TestService testService2) {
this.testService2 = testService2;
}
@@ -415,6 +421,7 @@ public TestService getMyTestService1() {
}
@Autowired
+ @Qualifier("myTestService1")
public void setMyTestService1(TestService myTestService1) {
this.myTestService1 = myTestService1;
}
@@ -424,6 +431,7 @@ public TestService getMyTestService2() {
}
@Autowired
+ @Qualifier("myTestService2")
public void setMyTestService2(TestService myTestService2) {
this.myTestService2 = myTestService2;
}
diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java
index 2854c55e0e..6c61bc2b55 100644
--- a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java
+++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java
@@ -12,6 +12,7 @@
package com.tencent.trpc.spring.exception.support;
import java.lang.reflect.Method;
+import java.lang.reflect.Parameter;
import java.util.HashSet;
import org.junit.Assert;
import org.junit.Test;
@@ -57,9 +58,14 @@ public void testHandleException() throws Throwable {
Object result = handler.handle(new IllegalArgumentException(), targetMethod,
new Object[]{new MyBean("name1"), new MyBean("name2")});
Assert.assertEquals(3, methodParameters.length);
- Assert.assertEquals("myBean1", methodParameters[0].getParameterName());
- Assert.assertEquals("e", methodParameters[1].getParameterName());
- Assert.assertEquals("method11111", methodParameters[2].getParameterName());
+
+ String[] expectedNames = {"myBean1", "e", "method11111"};
+ Parameter[] reflectParameters = invokeMethod.getParameters();
+ for (int i = 0; i < reflectParameters.length; i++) {
+ ParamName paramName = reflectParameters[i].getAnnotation(ParamName.class);
+ String actualName = paramName != null ? paramName.value() : reflectParameters[i].getName();
+ Assert.assertEquals(expectedNames[i], actualName);
+ }
Assert.assertEquals(true, String.class.isAssignableFrom(result.getClass()));
Assert.assertEquals("name1_IllegalArgumentException_targetMethod", result);
}
@@ -69,7 +75,9 @@ public static class MyExceptionHandle {
public void targetMethod(MyBean myBean1, MyBean myBean2) {
}
- public String handle(MyBean myBean1, RuntimeException e, Method method11111) {
+ public String handle(@ParamName("myBean1") MyBean myBean1,
+ @ParamName("e") RuntimeException e,
+ @ParamName("method11111") Method method11111) {
return myBean1.getName() + "_" + e.getClass().getSimpleName() + "_" + method11111.getName();
}
}
diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/ParamName.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/ParamName.java
new file mode 100644
index 0000000000..ce3f4d3d37
--- /dev/null
+++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/ParamName.java
@@ -0,0 +1,24 @@
+/*
+ * Tencent is pleased to support the open source community by making tRPC available.
+ *
+ * Copyright (C) 2023 THL A29 Limited, a Tencent company.
+ * All rights reserved.
+ *
+ * If you have downloaded a copy of the tRPC source code from Tencent,
+ * please note that tRPC source code is licensed under the Apache 2.0 License,
+ * A copy of the Apache 2.0 License can be found in the LICENSE file.
+ */
+package com.tencent.trpc.spring.exception.support;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+import java.lang.annotation.RetentionPolicy;
+
+@Target(ElementType.PARAMETER)
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+public @interface ParamName {
+ String value();
+}
diff --git a/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHandlerAdapter.java b/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHandlerAdapter.java
index d17905a81e..9228da838f 100644
--- a/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHandlerAdapter.java
+++ b/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHandlerAdapter.java
@@ -15,8 +15,8 @@
import com.tencent.trpc.core.exception.TRpcException;
import com.tencent.trpc.core.rpc.common.RpcMethodInfoAndInvoker;
import com.tencent.trpc.proto.http.server.AbstractHttpExecutor;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.web.servlet.HandlerAdapter;
diff --git a/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHttpCodec.java b/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHttpCodec.java
index 8ca5d35f7c..62c35450b5 100644
--- a/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHttpCodec.java
+++ b/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcHttpCodec.java
@@ -12,7 +12,7 @@
package com.tencent.trpc.springmvc;
import com.tencent.trpc.proto.http.common.HttpCodec;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
public class TRpcHttpCodec extends HttpCodec {
diff --git a/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcServiceHandlerMapping.java b/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcServiceHandlerMapping.java
index d1930a0a60..dbf4df98ff 100644
--- a/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcServiceHandlerMapping.java
+++ b/trpc-spring-support/trpc-springmvc/src/main/java/com/tencent/trpc/springmvc/TRpcServiceHandlerMapping.java
@@ -25,7 +25,7 @@
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.atomic.AtomicBoolean;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.core.Ordered;
diff --git a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/ExecutorDispatcher.java b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/ExecutorDispatcher.java
index 079d4d3a8c..5ed27416ba 100755
--- a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/ExecutorDispatcher.java
+++ b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/ExecutorDispatcher.java
@@ -14,10 +14,10 @@
import java.io.IOException;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
public class ExecutorDispatcher extends HttpServlet {
diff --git a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/HttpExecutor.java b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/HttpExecutor.java
index 2a418809c0..fcea4578af 100755
--- a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/HttpExecutor.java
+++ b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/HttpExecutor.java
@@ -12,9 +12,9 @@
package com.tencent.trpc.transport.http;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
/**
diff --git a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/common/ServletManager.java b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/common/ServletManager.java
index 5af7f0ba88..471b9f9ca8 100644
--- a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/common/ServletManager.java
+++ b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/common/ServletManager.java
@@ -30,8 +30,7 @@
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import javax.servlet.ServletContext;
-
+import jakarta.servlet.ServletContext;
/**
* Utility class used to manage {@link ServletContext}s.
*/
diff --git a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttp2Server.java b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttp2Server.java
index 9942ca3e44..9ddcd63995 100644
--- a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttp2Server.java
+++ b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttp2Server.java
@@ -53,7 +53,7 @@ protected ServerConnector buildServerConnector(Server server, ProtocolConfig con
alpn.setDefaultProtocol(HTTP2_SCHEME);
// 3. Config ssl factory
- SslConnectionFactory ssl = new SslConnectionFactory(sslContextFactory, alpn.getProtocol());
+ SslConnectionFactory ssl = new SslConnectionFactory((SslContextFactory.Server) sslContextFactory, alpn.getProtocol());
// 4. Config the connector of h2
ServerConnector http2Connector = new ServerConnector(server, ssl, alpn, h2,
diff --git a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttpsServer.java b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttpsServer.java
index 1ab05c2436..922a597a32 100644
--- a/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttpsServer.java
+++ b/trpc-transport/trpc-transport-http/src/main/java/com/tencent/trpc/transport/http/support/jetty/JettyHttpsServer.java
@@ -85,7 +85,7 @@ protected ServerConnector buildServerConnector(Server server, ProtocolConfig con
SslContextFactory sslContextFactory, HttpConfiguration httpConfig,
HttpConfiguration httpsConfig) {
// 1. Configure ssl factory
- SslConnectionFactory ssl = new SslConnectionFactory(sslContextFactory, HTTP1_SCHEME);
+ SslConnectionFactory ssl = new SslConnectionFactory((SslContextFactory.Server) sslContextFactory, HTTP1_SCHEME);
// 2. Configure the connector of https
ServerConnector http2Connector = new ServerConnector(server, ssl,
diff --git a/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/ExecutorDispatcherTest.java b/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/ExecutorDispatcherTest.java
index 3c59ecdcc2..2814e45454 100644
--- a/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/ExecutorDispatcherTest.java
+++ b/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/ExecutorDispatcherTest.java
@@ -14,9 +14,9 @@
import static org.mockito.Mockito.times;
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.junit.Test;
import org.powermock.api.mockito.PowerMockito;
diff --git a/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/JettyServerDemo.java b/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/JettyServerDemo.java
index 9ffbfd9293..77b806696d 100644
--- a/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/JettyServerDemo.java
+++ b/trpc-transport/trpc-transport-http/src/test/java/com/tencent/trpc/transport/http/JettyServerDemo.java
@@ -17,8 +17,8 @@
import com.tencent.trpc.core.extension.ExtensionLoader;
import com.tencent.trpc.transport.http.spi.HttpServerFactory;
import java.io.IOException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
public class JettyServerDemo {