getFeatureThreadLocal() {
return featureThreadLocal;
}
- public static boolean isLocalExtJavaClassInVendor() {
- SwaggerGeneratorFeature feature = featureThreadLocal.get();
- return feature != null ? feature.extJavaClassInVendor : true;
- }
-
// packageName and extJavaInVender is unnecessary, new invocation mechanism not depend them
// just remain them for compatible
private String packageName = "gen.swagger";
- private boolean extJavaClassInVendor = true;
-
- private boolean extJavaInterfaceInVendor = true;
public String getPackageName() {
return packageName;
@@ -44,23 +36,4 @@ public void setPackageName(String packageName) {
this.packageName = packageName;
}
- public boolean isExtJavaClassInVendor() {
- return extJavaClassInVendor;
- }
-
- public SwaggerGeneratorFeature setExtJavaClassInVendor(boolean extJavaClassInVendor) {
- this.extJavaClassInVendor = extJavaClassInVendor;
-
- return this;
- }
-
- public boolean isExtJavaInterfaceInVendor() {
- return extJavaInterfaceInVendor;
- }
-
- public SwaggerGeneratorFeature setExtJavaInterfaceInVendor(boolean extJavaInterfaceInVendor) {
- this.extJavaInterfaceInVendor = extJavaInterfaceInVendor;
-
- return this;
- }
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
index 302482b3082..2d037c4b483 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
@@ -31,7 +31,7 @@
import io.swagger.models.Operation;
import io.swagger.models.Path;
import io.swagger.models.Response;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.AbstractSerializableParameter;
import io.swagger.models.parameters.BodyParameter;
import io.swagger.models.parameters.CookieParameter;
@@ -57,7 +57,7 @@
import org.apache.servicecomb.swagger.generator.core.utils.MethodUtils;
import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
@@ -106,7 +106,7 @@ public abstract class AbstractOperationGenerator implements OperationGenerator {
public AbstractOperationGenerator(AbstractSwaggerGenerator swaggerGenerator, Method method) {
this.swaggerGenerator = swaggerGenerator;
- this.swagger = swaggerGenerator.getSwagger();
+ this.swagger = swaggerGenerator.getOpenAPI();
this.clazz = swaggerGenerator.getClazz();
this.method = method;
this.httpMethod = swaggerGenerator.getHttpMethod();
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractSwaggerGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractSwaggerGenerator.java
index fe82fd9c9e3..16b595d62f3 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractSwaggerGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractSwaggerGenerator.java
@@ -31,22 +31,19 @@
import java.util.Map;
import java.util.Set;
-import javax.ws.rs.core.MediaType;
-
import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.config.inject.PlaceholderResolver;
import org.apache.servicecomb.swagger.generator.ClassAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.OperationGenerator;
-import org.apache.servicecomb.swagger.generator.SwaggerConst;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
import org.apache.servicecomb.swagger.generator.SwaggerGeneratorFeature;
import org.apache.servicecomb.swagger.generator.core.utils.MethodUtils;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.models.Info;
-import io.swagger.models.Swagger;
-import io.swagger.models.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.info.Info;
+import io.swagger.v3.oas.models.servers.Server;
+
/**
*
@@ -62,7 +59,7 @@ public abstract class AbstractSwaggerGenerator implements SwaggerGenerator {
protected Class> cls;
- protected Swagger swagger;
+ protected OpenAPI openAPI;
// allowed to control only process some methods
// empty means all methods are available
@@ -72,23 +69,18 @@ public abstract class AbstractSwaggerGenerator implements SwaggerGenerator {
// to check if operationId is duplicated
protected Map operationGenerators = new LinkedHashMap<>();
- /**
- * According to the definition of swagger, the {@link Tag} defined in {@link Api#tags()} will be set
- * to all of the operations in this swagger. And the {@link Tag} definde in {@link ApiOperation#tags()} will overwrite
- * the {@link Api#tags()}.
- */
protected Set defaultTags = new LinkedHashSet<>();
protected String httpMethod;
@SuppressWarnings("unchecked")
public AbstractSwaggerGenerator(Class> cls) {
- this.swagger = new Swagger();
+ this.openAPI = new OpenAPI();
this.cls = cls;
}
- public Swagger getSwagger() {
- return swagger;
+ public OpenAPI getOpenAPI() {
+ return openAPI;
}
@Override
@@ -109,7 +101,7 @@ public SwaggerGeneratorFeature getSwaggerGeneratorFeature() {
return swaggerGeneratorFeature;
}
- public Swagger generate() {
+ public OpenAPI generate() {
LOGGER.info("generate schema from [{}]", cls);
scanClassAnnotation();
@@ -121,7 +113,7 @@ public Swagger generate() {
correctSwagger();
- return swagger;
+ return openAPI;
} finally {
featureThreadLocal.remove();
}
@@ -148,48 +140,19 @@ public void scanClassAnnotation() {
* if can not build default value, then throw exceptions
*/
protected void correctSwagger() {
- if (StringUtils.isEmpty(swagger.getSwagger())) {
- swagger.setSwagger("2.0");
+ if (StringUtils.isEmpty(openAPI.getOpenapi())) {
+ openAPI.setOpenapi("3.0");
}
- correctBasePath();
correctInfo();
- correctProduces();
- correctConsumes();
- }
-
- private void correctProduces() {
- List produces = swagger.getProduces();
- if (produces == null || produces.isEmpty()) {
- produces = Arrays.asList(MediaType.APPLICATION_JSON);
- swagger.setProduces(produces);
- }
}
- private void correctConsumes() {
- List consumes = swagger.getConsumes();
- if (consumes == null || consumes.isEmpty()) {
- consumes = Arrays.asList(MediaType.APPLICATION_JSON);
- swagger.setConsumes(consumes);
- }
- }
-
- protected void correctBasePath() {
- String basePath = swagger.getBasePath();
- if (StringUtils.isEmpty(basePath)) {
- basePath = "/" + cls.getSimpleName();
- }
- if (!basePath.startsWith("/")) {
- basePath = "/" + basePath;
- }
- swagger.setBasePath(basePath);
- }
private void correctInfo() {
- Info info = swagger.getInfo();
+ Info info = openAPI.getInfo();
if (info == null) {
info = new Info();
- swagger.setInfo(info);
+ openAPI.setInfo(info);
}
if (StringUtils.isEmpty(info.getTitle())) {
@@ -198,26 +161,6 @@ private void correctInfo() {
if (StringUtils.isEmpty(info.getVersion())) {
info.setVersion("1.0.0");
}
-
- setJavaInterface(info);
- }
-
- protected void setJavaInterface(Info info) {
- if (!swaggerGeneratorFeature.isExtJavaInterfaceInVendor()) {
- return;
- }
-
- if (cls.isInterface()) {
- info.setVendorExtension(SwaggerConst.EXT_JAVA_INTF, cls.getName());
- return;
- }
-
- if (StringUtils.isEmpty(swaggerGeneratorFeature.getPackageName())) {
- return;
- }
-
- String intfName = swaggerGeneratorFeature.getPackageName() + "." + cls.getSimpleName() + "Intf";
- info.setVendorExtension(SwaggerConst.EXT_JAVA_INTF, intfName);
}
@Override
@@ -249,7 +192,7 @@ protected boolean isSkipMethod(Method method) {
return true;
}
- ApiOperation apiOperation = method.getAnnotation(ApiOperation.class);
+ Operation apiOperation = method.getAnnotation(Operation.class);
if (apiOperation != null && apiOperation.hidden()) {
return apiOperation.hidden();
}
@@ -301,7 +244,9 @@ protected void addOperationsToSwagger() {
@Override
public void setBasePath(String basePath) {
basePath = new PlaceholderResolver().replaceFirst(basePath);
- swagger.setBasePath(basePath);
+ Server server = new Server();
+ server.setUrl(basePath);
+ openAPI.getServers().add(server);
}
/**
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java
index e0361061e90..acebddb9ea9 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java
@@ -21,7 +21,7 @@
import io.swagger.models.HttpMethod;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class SwaggerOperation {
private final Swagger swagger;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java
index 805675b4a83..c998a47aa18 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java
@@ -26,7 +26,7 @@
import io.swagger.models.HttpMethod;
import io.swagger.models.Operation;
import io.swagger.models.Path;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class SwaggerOperations {
public static SwaggerOperations generate(Class> cls) {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java
index e4cea34f407..dd910605190 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java
@@ -37,7 +37,7 @@
import io.swagger.models.Model;
import io.swagger.models.Operation;
import io.swagger.models.Response;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.properties.ArrayProperty;
import io.swagger.models.properties.MapProperty;
import io.swagger.models.properties.Property;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessor.java
index 4cb1b22d097..454ac6d7f56 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessor.java
@@ -59,7 +59,7 @@ public void process(SwaggerGenerator swaggerGenerator,
SwaggerUtils.setCommaConsumes(operation, apiOperationAnnotation.consumes());
SwaggerUtils.setCommaProduces(operation, apiOperationAnnotation.produces());
convertProtocols(apiOperationAnnotation.protocols(), operation);
- AnnotationUtils.addResponse(swaggerGenerator.getSwagger(),
+ AnnotationUtils.addResponse(swaggerGenerator.getOpenAPI(),
operation,
apiOperationAnnotation);
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessor.java
index 1062bb59352..28932f65b24 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessor.java
@@ -35,8 +35,8 @@ public Type getProcessType() {
@Override
public void process(SwaggerGenerator swaggerGenerator, Api api) {
setTags(swaggerGenerator, api);
- SwaggerUtils.setCommaConsumes(swaggerGenerator.getSwagger(), api.consumes());
- SwaggerUtils.setCommaProduces(swaggerGenerator.getSwagger(), api.produces());
+ SwaggerUtils.setCommaConsumes(swaggerGenerator.getOpenAPI(), api.consumes());
+ SwaggerUtils.setCommaProduces(swaggerGenerator.getOpenAPI(), api.produces());
}
private void setTags(SwaggerGenerator swaggerGenerator, Api api) {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java
index 8037d514a24..590f2e7bb79 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java
@@ -33,6 +33,6 @@ public Type getProcessType() {
// but support this is not so bad
@Override
public void process(SwaggerGenerator swaggerGenerator, ApiResponse apiResponse) {
- AnnotationUtils.addResponse(swaggerGenerator.getSwagger(), apiResponse);
+ AnnotationUtils.addResponse(swaggerGenerator.getOpenAPI(), apiResponse);
}
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java
index 67ade438e87..dcb83e57237 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java
@@ -35,7 +35,7 @@ public Type getProcessType() {
@Override
public void process(SwaggerGenerator swaggerGenerator, OperationGenerator operationGenerator,
ApiResponse apiResponse) {
- AnnotationUtils.addResponse(swaggerGenerator.getSwagger(),
+ AnnotationUtils.addResponse(swaggerGenerator.getOpenAPI(),
operationGenerator.getOperation(),
apiResponse);
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java
index 0aeac9ca5ae..9af7bc01ca0 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java
@@ -38,7 +38,7 @@ public void process(SwaggerGenerator swaggerGenerator, OperationGenerator operat
ResponseHeaderConfig config = AnnotationUtils.convert(responseHeader);
if (config != null) {
Property property =
- AnnotationUtils.generateResponseHeaderProperty(swaggerGenerator.getSwagger(), config);
+ AnnotationUtils.generateResponseHeaderProperty(swaggerGenerator.getOpenAPI(), config);
operationGenerator.addMethodResponseHeader(config.getName(), property);
}
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java
index fa753934999..cb33d5f5a13 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java
@@ -39,7 +39,7 @@
import io.swagger.models.Info;
import io.swagger.models.License;
import io.swagger.models.Scheme;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.Tag;
import io.swagger.models.auth.ApiKeyAuthDefinition;
import io.swagger.models.auth.BasicAuthDefinition;
@@ -56,7 +56,7 @@ public Type getProcessType() {
@Override
public void process(SwaggerGenerator swaggerGenerator, SwaggerDefinition definitionAnnotation) {
- Swagger swagger = swaggerGenerator.getSwagger();
+ Swagger swagger = swaggerGenerator.getOpenAPI();
if (StringUtils.isNotEmpty(definitionAnnotation.basePath())) {
swaggerGenerator.setBasePath(definitionAnnotation.basePath());
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java
index bc57b4184e6..2f6e5fd7ae5 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java
@@ -24,7 +24,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.AbstractSerializableParameter;
public abstract class AbstractSerializableParameterProcessor, ANNOTATION> implements
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java
index b4528ae36fc..870e2ad80f4 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java
@@ -27,7 +27,7 @@
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.Parameter;
import io.swagger.util.ReflectionUtils;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java
index dcd1d745ab5..600f941dff0 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java
@@ -23,7 +23,7 @@
import io.swagger.annotations.ApiParam;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.Parameter;
public class ApiParamProcessor implements ParameterProcessor {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/EnumPostProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/EnumPostProcessor.java
index 9402ea049e3..de3e15e7826 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/EnumPostProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/EnumPostProcessor.java
@@ -22,7 +22,7 @@
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.foundation.common.base.DynamicEnum;
import org.apache.servicecomb.swagger.extend.SwaggerEnum;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/JsonViewProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/JsonViewProcessor.java
index e099a7158f1..c072c7a4fe2 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/JsonViewProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/JsonViewProcessor.java
@@ -27,7 +27,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.Parameter;
public class JsonViewProcessor implements ParameterProcessor {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartArrayProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartArrayProcessor.java
index 415628746b0..b4ecd6ecc03 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartArrayProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartArrayProcessor.java
@@ -27,7 +27,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.FormParameter;
import io.swagger.models.properties.ArrayProperty;
import io.swagger.models.properties.FileProperty;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartProcessor.java
index b09c11c34d5..9ad0ef2ee6f 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/PartProcessor.java
@@ -27,7 +27,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.FormParameter;
import io.swagger.models.properties.FileProperty;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/RawJsonRequestBodyProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/RawJsonRequestBodyProcessor.java
index 71ee99431f2..5f6f5ba7a71 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/RawJsonRequestBodyProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/RawJsonRequestBodyProcessor.java
@@ -25,7 +25,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.BodyParameter;
public class RawJsonRequestBodyProcessor implements ParameterProcessor {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java
index 37ddad5fa60..033befa4117 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java
@@ -86,7 +86,7 @@ public Model process(SwaggerGenerator swaggerGenerator, OperationGenerator opera
if (responseType instanceof Class && Part.class.isAssignableFrom((Class>) responseType)) {
responseType = Part.class;
}
- SwaggerUtils.addDefinitions(swaggerGenerator.getSwagger(), responseType);
+ SwaggerUtils.addDefinitions(swaggerGenerator.getOpenAPI(), responseType);
Property property = ModelConverters.getInstance().readAsProperty(responseType);
return PropertyModelConverterExt.toModel(property);
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/unittest/UnitTestSwaggerUtils.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/unittest/UnitTestSwaggerUtils.java
index f26513275ae..b531a92ab6b 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/unittest/UnitTestSwaggerUtils.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/unittest/UnitTestSwaggerUtils.java
@@ -28,7 +28,7 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectWriter;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.util.Yaml;
import org.junit.jupiter.api.Assertions;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoOperationGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoOperationGenerator.java
index cd6c5eb8cc4..f9dd52acee0 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoOperationGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoOperationGenerator.java
@@ -24,7 +24,7 @@
import java.util.Map;
import java.util.stream.Collectors;
-import javax.ws.rs.HttpMethod;
+import jakarta.ws.rs.HttpMethod;
import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.swagger.SwaggerUtils;
@@ -41,7 +41,7 @@
import io.swagger.converter.ModelConverters;
import io.swagger.models.ModelImpl;
import io.swagger.models.RefModel;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.BodyParameter;
import io.swagger.models.parameters.Parameter;
import io.swagger.models.properties.Property;
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoSwaggerGeneratorFactory.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoSwaggerGeneratorFactory.java
index 0a19efa558e..05053f8609d 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoSwaggerGeneratorFactory.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/pojo/PojoSwaggerGeneratorFactory.java
@@ -18,7 +18,7 @@
import java.lang.annotation.Annotation;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
import org.apache.servicecomb.swagger.generator.SwaggerGeneratorFactory;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/TestSwaggerUtils.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/TestSwaggerUtils.java
index 36f1b66868d..0fe34c963fc 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/TestSwaggerUtils.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/TestSwaggerUtils.java
@@ -29,7 +29,7 @@
import io.swagger.models.Operation;
import io.swagger.models.Path;
import io.swagger.models.Response;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.util.Yaml;
import org.junit.jupiter.api.Test;
import org.mockito.MockedStatic;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/converter/ConverterMgrTest.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/converter/ConverterMgrTest.java
index de118854404..c12d8ad6a5a 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/converter/ConverterMgrTest.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/converter/ConverterMgrTest.java
@@ -30,7 +30,7 @@
import io.swagger.models.Model;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.BodyParameter;
import io.swagger.models.properties.ObjectProperty;
import io.swagger.models.properties.Property;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiImplicitParams.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiImplicitParams.java
index c4f216d38dd..ca1bfda7dea 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiImplicitParams.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiImplicitParams.java
@@ -24,7 +24,7 @@
import io.swagger.models.Operation;
import io.swagger.models.Path;
import io.swagger.models.RefModel;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.BodyParameter;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiOperation.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiOperation.java
index b55cb6eb239..5cebf8071cb 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiOperation.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiOperation.java
@@ -39,7 +39,7 @@
import io.swagger.models.Path;
import io.swagger.models.Response;
import io.swagger.models.Scheme;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java
index 83b38039ee5..0795d9ef4a6 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java
@@ -20,7 +20,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.SwaggerUtils;
import org.apache.servicecomb.swagger.generator.SwaggerConst;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerDefinition.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerDefinition.java
index 26f2ec655b8..2e3f46f5ff0 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerDefinition.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerDefinition.java
@@ -31,7 +31,7 @@
import io.swagger.annotations.License;
import io.swagger.annotations.SwaggerDefinition;
import io.swagger.annotations.Tag;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerGenerator.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerGenerator.java
index c204b7442dc..dc753951d09 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerGenerator.java
@@ -45,7 +45,7 @@ public void testBasePathPlaceHolder() {
PojoSwaggerGenerator swaggerGenerator = new PojoSwaggerGenerator(null);
swaggerGenerator.setBasePath("/a/${var}/b");
- Assertions.assertEquals("/a/varValue/b", swaggerGenerator.getSwagger().getBasePath());
+ Assertions.assertEquals("/a/varValue/b", swaggerGenerator.getOpenAPI().getBasePath());
}
@Test
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerUtils.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerUtils.java
index 44a9b187377..73f5ee9fe2b 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerUtils.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerUtils.java
@@ -44,7 +44,7 @@
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.properties.ArrayProperty;
import io.swagger.models.properties.MapProperty;
import io.swagger.models.properties.ObjectProperty;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/model/TestSwaggerOperations.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/model/TestSwaggerOperations.java
index b60476f6836..78abf9eaca8 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/model/TestSwaggerOperations.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/model/TestSwaggerOperations.java
@@ -19,7 +19,7 @@
import org.apache.servicecomb.swagger.SwaggerUtils;
import org.junit.jupiter.api.Assertions;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Test;
public class TestSwaggerOperations {
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessorTest.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessorTest.java
index 7cd73657c36..3539a13b702 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessorTest.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiOperationProcessorTest.java
@@ -19,10 +19,10 @@
import static org.hamcrest.Matchers.containsInAnyOrder;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.NotNull;
-import javax.ws.rs.core.MediaType;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotEmpty;
+import jakarta.validation.constraints.NotNull;
+import jakarta.ws.rs.core.MediaType;
import io.swagger.models.properties.Property;
import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperation;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessorTest.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessorTest.java
index 468c8eb1e86..977d27891cf 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessorTest.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiProcessorTest.java
@@ -19,7 +19,7 @@
import static org.hamcrest.Matchers.contains;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperation;
@@ -29,7 +29,7 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.SwaggerDefinition;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessorTest.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessorTest.java
index e424865b60c..8c6614fb46e 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessorTest.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessorTest.java
@@ -19,7 +19,7 @@
import static org.hamcrest.Matchers.contains;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
import org.apache.servicecomb.swagger.generator.core.unittest.UnitTestSwaggerUtils;
@@ -41,7 +41,7 @@
import io.swagger.annotations.SwaggerDefinition;
import io.swagger.annotations.SwaggerDefinition.Scheme;
import io.swagger.annotations.Tag;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsOperationGenerator.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsOperationGenerator.java
index b1f23c36813..e223887606b 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsOperationGenerator.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsOperationGenerator.java
@@ -22,7 +22,7 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.BeanParam;
+import jakarta.ws.rs.BeanParam;
import org.apache.servicecomb.swagger.generator.ParameterGenerator;
import org.apache.servicecomb.swagger.generator.core.AbstractSwaggerGenerator;
@@ -32,7 +32,7 @@
import com.fasterxml.jackson.databind.JavaType;
import com.google.common.base.Defaults;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.AbstractSerializableParameter;
public class JaxrsOperationGenerator extends RestOperationGenerator {
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGenerator.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGenerator.java
index 4fb24c49654..6646941d3c8 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGenerator.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGenerator.java
@@ -20,7 +20,7 @@
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
-import javax.ws.rs.HttpMethod;
+import jakarta.ws.rs.HttpMethod;
import org.apache.servicecomb.swagger.generator.OperationGenerator;
import org.apache.servicecomb.swagger.generator.rest.RestSwaggerGenerator;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGeneratorFactory.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGeneratorFactory.java
index ac3460fa701..8c60a85671c 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGeneratorFactory.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/JaxrsSwaggerGeneratorFactory.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.SwaggerUtils;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ConsumesAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ConsumesAnnotationProcessor.java
index e1f77486015..784f223543b 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ConsumesAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ConsumesAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.Consumes;
+import jakarta.ws.rs.Consumes;
import org.apache.servicecomb.swagger.SwaggerUtils;
import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/CookieParamAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/CookieParamAnnotationProcessor.java
index 271bbf25806..ad618ce1935 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/CookieParamAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/CookieParamAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.CookieParam;
+import jakarta.ws.rs.CookieParam;
import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
import org.apache.servicecomb.swagger.generator.core.processor.parameter.AbstractSerializableParameterProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/DeleteAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/DeleteAnnotationProcessor.java
index 3b6668b9986..e5cc735b1c1 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/DeleteAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/DeleteAnnotationProcessor.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.DELETE;
+import jakarta.ws.rs.DELETE;
public class DeleteAnnotationProcessor extends GetAnnotationProcessor {
@Override
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/FormParamAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/FormParamAnnotationProcessor.java
index 1e7bbf44ffb..9b4457b7f40 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/FormParamAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/FormParamAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.FormParam;
+import jakarta.ws.rs.FormParam;
import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
import org.apache.servicecomb.swagger.generator.core.processor.parameter.AbstractSerializableParameterProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/GetAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/GetAnnotationProcessor.java
index f474d410056..05885cddbe3 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/GetAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/GetAnnotationProcessor.java
@@ -20,8 +20,8 @@
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
-import javax.ws.rs.GET;
-import javax.ws.rs.HttpMethod;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HttpMethod;
import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.OperationGenerator;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/HeaderParamAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/HeaderParamAnnotationProcessor.java
index 29bb657c804..59801705b6d 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/HeaderParamAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/HeaderParamAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.HeaderParam;
+import jakarta.ws.rs.HeaderParam;
import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
import org.apache.servicecomb.swagger.generator.core.processor.parameter.AbstractSerializableParameterProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PatchAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PatchAnnotationProcessor.java
index 435c1b55469..e2648cd026a 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PatchAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PatchAnnotationProcessor.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.PATCH;
+import jakarta.ws.rs.PATCH;
public class PatchAnnotationProcessor extends GetAnnotationProcessor {
@Override
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathClassAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathClassAnnotationProcessor.java
index f8e8a612185..15283a8e14a 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathClassAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathClassAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.generator.ClassAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathMethodAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathMethodAnnotationProcessor.java
index 6860a6726a3..80931c20958 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathMethodAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathMethodAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.OperationGenerator;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathParamAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathParamAnnotationProcessor.java
index c523e308ef2..cae8fe48bb3 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathParamAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PathParamAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.PathParam;
+import jakarta.ws.rs.PathParam;
import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
import org.apache.servicecomb.swagger.generator.core.processor.parameter.AbstractSerializableParameterProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PostAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PostAnnotationProcessor.java
index b449f29c597..da7fd0dc394 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PostAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PostAnnotationProcessor.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.POST;
+import jakarta.ws.rs.POST;
public class PostAnnotationProcessor extends GetAnnotationProcessor {
@Override
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ProducesAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ProducesAnnotationProcessor.java
index 33cddc591e6..16f320ea4ac 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ProducesAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/ProducesAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.Produces;
+import jakarta.ws.rs.Produces;
import org.apache.servicecomb.swagger.SwaggerUtils;
import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PutAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PutAnnotationProcessor.java
index 38a453c39fe..3b0f5ecf482 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PutAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/PutAnnotationProcessor.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.PUT;
+import jakarta.ws.rs.PUT;
public class PutAnnotationProcessor extends GetAnnotationProcessor {
@Override
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/QueryParamAnnotationProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/QueryParamAnnotationProcessor.java
index ec78952120c..904841e6309 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/QueryParamAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/annotation/QueryParamAnnotationProcessor.java
@@ -19,7 +19,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.QueryParam;
import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
import org.apache.servicecomb.swagger.generator.core.processor.parameter.AbstractSerializableParameterProcessor;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/response/JaxrsResponseProcessor.java b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/response/JaxrsResponseProcessor.java
index 715464d99a2..b1b50f1de68 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/response/JaxrsResponseProcessor.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/main/java/org/apache/servicecomb/swagger/generator/jaxrs/processor/response/JaxrsResponseProcessor.java
@@ -19,8 +19,8 @@
import java.lang.reflect.Type;
import java.util.List;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
import org.apache.servicecomb.swagger.generator.OperationGenerator;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
@@ -44,7 +44,7 @@ public Type extractResponseType(SwaggerGenerator swaggerGenerator, OperationGene
// if produces is text,then can assume to be string, otherwise can only throw exception
List produces = operationGenerator.getOperation().getProduces();
if (produces == null) {
- produces = swaggerGenerator.getSwagger().getProduces();
+ produces = swaggerGenerator.getOpenAPI().getProduces();
}
if (produces != null) {
if (produces.contains(MediaType.TEXT_PLAIN)) {
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/ClassMethodNoPath.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/ClassMethodNoPath.java
index c8071550967..fc4d2358124 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/ClassMethodNoPath.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/ClassMethodNoPath.java
@@ -16,8 +16,8 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
@Path("")
public class ClassMethodNoPath {
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/Echo.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/Echo.java
index a0a10f832cb..46358f94586 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/Echo.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/Echo.java
@@ -19,20 +19,20 @@
import java.util.List;
-import javax.ws.rs.BeanParam;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.CookieParam;
-import javax.ws.rs.FormParam;
-import javax.ws.rs.GET;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.PATCH;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.BeanParam;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.CookieParam;
+import jakarta.ws.rs.FormParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HeaderParam;
+import jakarta.ws.rs.PATCH;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
import org.apache.servicecomb.foundation.test.scaffolding.model.Color;
import org.apache.servicecomb.foundation.test.scaffolding.model.User;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/MultiDefaultPath.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/MultiDefaultPath.java
index f8e743f9f59..ab18732e479 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/MultiDefaultPath.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/MultiDefaultPath.java
@@ -16,8 +16,8 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
@Path("/abc")
public class MultiDefaultPath {
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/AggregatedParam.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/AggregatedParam.java
index 16cc22eb12d..f4a5b6312d4 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/AggregatedParam.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/AggregatedParam.java
@@ -18,12 +18,12 @@
import java.util.List;
-import javax.ws.rs.CookieParam;
-import javax.ws.rs.DefaultValue;
-import javax.ws.rs.FormParam;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.CookieParam;
+import jakarta.ws.rs.DefaultValue;
+import jakarta.ws.rs.FormParam;
+import jakarta.ws.rs.HeaderParam;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.QueryParam;
public class AggregatedParam {
@DefaultValue("pa")
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexField.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexField.java
index c456994f1cd..db6eb377943 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexField.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexField.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs.model;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.QueryParam;
public class BeanParamComplexField {
@QueryParam("q")
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexSetter.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexSetter.java
index 01ae73a34c1..c2c6b537a41 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexSetter.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamComplexSetter.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs.model;
-import javax.ws.rs.HeaderParam;
+import jakarta.ws.rs.HeaderParam;
public class BeanParamComplexSetter {
private AggregatedParam complex;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithJsonIgnoredTagged.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithJsonIgnoredTagged.java
index 532c8e2c8c6..5acea6d419e 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithJsonIgnoredTagged.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithJsonIgnoredTagged.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs.model;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.QueryParam;
import com.fasterxml.jackson.annotation.JsonIgnore;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithPart.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithPart.java
index 93995d5ba02..a007a62f6b7 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithPart.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/BeanParamWithPart.java
@@ -17,8 +17,8 @@
package org.apache.servicecomb.swagger.generator.jaxrs.model;
import javax.servlet.http.Part;
-import javax.ws.rs.FormParam;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.FormParam;
+import jakarta.ws.rs.QueryParam;
public class BeanParamWithPart {
@QueryParam("queryStr")
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/ConsumesAndProduces.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/ConsumesAndProduces.java
index 39da129addf..b39ea589b5d 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/ConsumesAndProduces.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/ConsumesAndProduces.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs.model;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
public class ConsumesAndProduces {
@Consumes(MediaType.APPLICATION_JSON)
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/DynamicStatusBeanParam.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/DynamicStatusBeanParam.java
index 8cd280c29b4..b6b5387074c 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/DynamicStatusBeanParam.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/DynamicStatusBeanParam.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs.model.enums;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.QueryParam;
import io.swagger.annotations.ApiParam;
diff --git a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/JdkStatusBeanParam.java b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/JdkStatusBeanParam.java
index a6437c55583..e0e1be7288c 100644
--- a/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/JdkStatusBeanParam.java
+++ b/swagger/swagger-generator/generator-jaxrs/src/test/java/org/apache/servicecomb/swagger/generator/jaxrs/model/enums/JdkStatusBeanParam.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.jaxrs.model.enums;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.QueryParam;
import io.swagger.annotations.ApiParam;
diff --git a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/AbstractSpringmvcSerializableParameterProcessor.java b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/AbstractSpringmvcSerializableParameterProcessor.java
index db3dbed4eec..66f2612cc17 100644
--- a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/AbstractSpringmvcSerializableParameterProcessor.java
+++ b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/AbstractSpringmvcSerializableParameterProcessor.java
@@ -25,7 +25,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.AbstractSerializableParameter;
public abstract class AbstractSpringmvcSerializableParameterProcessor, ANNOTATION> extends
diff --git a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestBodyAnnotationProcessor.java b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestBodyAnnotationProcessor.java
index 24fbfa61952..b4730542740 100644
--- a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestBodyAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestBodyAnnotationProcessor.java
@@ -26,7 +26,7 @@
import com.fasterxml.jackson.databind.JavaType;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.models.parameters.BodyParameter;
public class RequestBodyAnnotationProcessor implements ParameterProcessor {
diff --git a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestMappingClassAnnotationProcessor.java b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestMappingClassAnnotationProcessor.java
index 55ade219702..2803d9983d3 100644
--- a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestMappingClassAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RequestMappingClassAnnotationProcessor.java
@@ -25,7 +25,7 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class RequestMappingClassAnnotationProcessor implements ClassAnnotationProcessor {
@Override
@@ -35,7 +35,7 @@ public Type getProcessType() {
@Override
public void process(SwaggerGenerator swaggerGenerator, RequestMapping requestMapping) {
- Swagger swagger = swaggerGenerator.getSwagger();
+ Swagger swagger = swaggerGenerator.getOpenAPI();
this.processMethod(requestMapping.method(), swaggerGenerator);
diff --git a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RestControllerClassAnnotationProcessor.java b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RestControllerClassAnnotationProcessor.java
index 78cb81afe8d..5f5db23c0b7 100644
--- a/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RestControllerClassAnnotationProcessor.java
+++ b/swagger/swagger-generator/generator-springmvc/src/main/java/org/apache/servicecomb/swagger/generator/springmvc/processor/annotation/RestControllerClassAnnotationProcessor.java
@@ -24,7 +24,7 @@
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
import org.springframework.web.bind.annotation.RestController;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class RestControllerClassAnnotationProcessor implements ClassAnnotationProcessor {
@Override
@@ -34,7 +34,7 @@ public Type getProcessType() {
@Override
public void process(SwaggerGenerator swaggerGenerator, RestController restController) {
- Swagger swagger = swaggerGenerator.getSwagger();
+ Swagger swagger = swaggerGenerator.getOpenAPI();
if (StringUtils.isEmpty(swagger.getBasePath())) {
swagger.setBasePath("/");
}
diff --git a/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/SwaggerTestTarget.java b/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/SwaggerTestTarget.java
index 29565c72e8a..1eb7d967835 100644
--- a/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/SwaggerTestTarget.java
+++ b/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/SwaggerTestTarget.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.springmvc.model;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
diff --git a/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/TestProducer.java b/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/TestProducer.java
index 1e2cc39a769..3dcfee2026e 100644
--- a/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/TestProducer.java
+++ b/swagger/swagger-generator/generator-springmvc/src/test/java/org/apache/servicecomb/swagger/generator/springmvc/model/TestProducer.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.generator.springmvc.model;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerEnvironment.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerEnvironment.java
index d18b596c762..97442549fee 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerEnvironment.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerEnvironment.java
@@ -42,7 +42,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.util.Json;
public class SwaggerEnvironment {
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerProducer.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerProducer.java
index 6f2be690523..57983c14e7d 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerProducer.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/engine/SwaggerProducer.java
@@ -20,7 +20,7 @@
import java.util.HashMap;
import java.util.Map;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class SwaggerProducer {
private Class> producerCls;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/AsyncResponse.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/AsyncResponse.java
index e8b8895898c..0e0bffa24cb 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/AsyncResponse.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/AsyncResponse.java
@@ -17,7 +17,7 @@
package org.apache.servicecomb.swagger.invocation;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
public interface AsyncResponse {
void handle(Response response);
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/Response.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/Response.java
index 5b696db2c1e..26cfb48d322 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/Response.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/Response.java
@@ -18,8 +18,8 @@
import java.util.List;
-import javax.ws.rs.core.Response.Status;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.context.HttpStatus;
import org.apache.servicecomb.swagger.invocation.exception.CommonExceptionData;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/context/InvocationContext.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/context/InvocationContext.java
index 9789752bd48..8f7da8d0bd3 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/context/InvocationContext.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/context/InvocationContext.java
@@ -20,8 +20,8 @@
import java.util.HashMap;
import java.util.Map;
-import javax.ws.rs.core.Response.Status;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.StatusType;
/**
* InvocationContext is used to pass data between microservices or in microservice different layer.
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/ExceptionFactory.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/ExceptionFactory.java
index eab0afdcfa5..b6c71ac5356 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/ExceptionFactory.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/ExceptionFactory.java
@@ -20,7 +20,7 @@
import java.util.concurrent.CompletionException;
import java.util.concurrent.ExecutionException;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.Response;
import org.apache.servicecomb.swagger.invocation.SwaggerInvocation;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/InvocationException.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/InvocationException.java
index 425f61b2336..bd6ba5cc194 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/InvocationException.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/exception/InvocationException.java
@@ -17,7 +17,7 @@
package org.apache.servicecomb.swagger.invocation.exception;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.context.HttpStatus;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/ResponsesMeta.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/ResponsesMeta.java
index 4499e2beeb1..a7502bbdc10 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/ResponsesMeta.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/ResponsesMeta.java
@@ -22,7 +22,7 @@
import java.util.Map;
import java.util.Map.Entry;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.foundation.common.utils.SPIServiceUtils;
import org.apache.servicecomb.swagger.converter.ConverterMgr;
@@ -35,7 +35,7 @@
import io.swagger.models.Operation;
import io.swagger.models.Response;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
/**
*
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/DefaultProducerResponseMapper.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/DefaultProducerResponseMapper.java
index aa4f2ce8863..aa12dad9be9 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/DefaultProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/DefaultProducerResponseMapper.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.invocation.response.producer;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.Response;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/OptionalProducerResponseMapper.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/OptionalProducerResponseMapper.java
index afc6c5e9d7e..1e63a537140 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/OptionalProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/OptionalProducerResponseMapper.java
@@ -18,7 +18,7 @@
import java.util.Optional;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.Response;
diff --git a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/ProducerResponseMapper.java b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/ProducerResponseMapper.java
index 4347d8b45ba..68617b87c1d 100644
--- a/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/ProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-core/src/main/java/org/apache/servicecomb/swagger/invocation/response/producer/ProducerResponseMapper.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.invocation.response.producer;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.Response;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestException.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestException.java
index c5849138560..743b77f8acd 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestException.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestException.java
@@ -18,7 +18,7 @@
import java.lang.reflect.InvocationTargetException;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.swagger.invocation.exception.CommonExceptionData;
import org.apache.servicecomb.swagger.invocation.exception.ExceptionFactory;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestResponse.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestResponse.java
index d06d3be353f..6c108e33cde 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestResponse.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/core/TestResponse.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.core;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.foundation.test.scaffolding.exception.RuntimeExceptionWithoutStackTrace;
import org.apache.servicecomb.swagger.invocation.AsyncResponse;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/engine/TestSwaggerEnvironment.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/engine/TestSwaggerEnvironment.java
index b3d23237f09..e80182ed282 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/engine/TestSwaggerEnvironment.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/engine/TestSwaggerEnvironment.java
@@ -27,7 +27,7 @@
import org.junit.BeforeClass;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
public class TestSwaggerEnvironment {
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V1.java
index e26d3b95630..f04656d8774 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V1.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V2.java
index 653cd586457..257f89f4f52 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV1V2.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V1.java
index d85b8b2b283..d94d8c93e42 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V1.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V2.java
index 8e11a7a4029..3e2e634d12c 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestJaxrsV2V2.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoOneArg.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoOneArg.java
index a436c0dbb4e..4a103faffe9 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoOneArg.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoOneArg.java
@@ -29,7 +29,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.ConsumerOneArg;
import org.apache.servicecomb.swagger.invocation.schemas.PojoOneArg;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V1.java
index 41d80ceacf1..a9dd3694464 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V1.java
@@ -33,7 +33,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V2.java
index fd10ab4a4f2..477460bb6ca 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV1V2.java
@@ -31,7 +31,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V1.java
index 79c7ce29050..ef669bf3b0e 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V1.java
@@ -30,7 +30,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.PojoAddV1;
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V2.java
index a24a636a07f..64656b37b85 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestPojoV2V2.java
@@ -31,7 +31,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V1.java
index 0642f0827d2..028d518084b 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V1.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V2.java
index e2173ca8942..2236e3c7045 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV1V2.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V1.java
index 3979024f365..890ba789b93 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V1.java
@@ -32,7 +32,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
import org.junit.Test;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
@SuppressWarnings("unchecked")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V2.java
index 21b1a702976..65a380c2439 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/arguments/consumer/TestSpringmvcV2V2.java
@@ -31,7 +31,7 @@
import org.apache.servicecomb.swagger.invocation.schemas.SpringmvcAddWrapperV2;
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/context/TestInvocationContext.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/context/TestInvocationContext.java
index 6f3244d2f44..b52a3054056 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/context/TestInvocationContext.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/context/TestInvocationContext.java
@@ -19,7 +19,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.ws.rs.core.Response.Status.Family;
+import jakarta.ws.rs.core.Response.Status.Family;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/ErrorToProducerResponseConverter.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/ErrorToProducerResponseConverter.java
index 87eaae408a5..490f5d498b5 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/ErrorToProducerResponseConverter.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/ErrorToProducerResponseConverter.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.invocation.exception;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.swagger.invocation.Response;
import org.apache.servicecomb.swagger.invocation.SwaggerInvocation;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionFactory.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionFactory.java
index f6ac2a8124d..ee933222dfd 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionFactory.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionFactory.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.invocation.exception;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.swagger.invocation.Response;
import org.junit.Test;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionToProducerResponseConverters.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionToProducerResponseConverters.java
index fe8eaf06933..e3a6846d5fd 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionToProducerResponseConverters.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestExceptionToProducerResponseConverters.java
@@ -19,7 +19,7 @@
import java.io.IOException;
import java.util.Arrays;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.foundation.common.utils.SPIServiceUtils;
import org.apache.servicecomb.swagger.invocation.Response;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestInvocationExceptionToProducerResponseConverter.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestInvocationExceptionToProducerResponseConverter.java
index 159c2b2237f..f8ffed8b6bb 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestInvocationExceptionToProducerResponseConverter.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/exception/TestInvocationExceptionToProducerResponseConverter.java
@@ -33,7 +33,7 @@ public void getExceptionClass() {
@Test
public void convert(@Mocked SwaggerInvocation swaggerInvocation) {
- InvocationException e = new InvocationException(javax.ws.rs.core.Response.Status.BAD_REQUEST, "test");
+ InvocationException e = new InvocationException(jakarta.ws.rs.core.Response.Status.BAD_REQUEST, "test");
Response response = converter.convert(swaggerInvocation, e);
Assertions.assertSame(e, response.getResult());
}
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/models/JaxrsImpl.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/models/JaxrsImpl.java
index 21797d9f6ce..c1e9bd23f7b 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/models/JaxrsImpl.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/models/JaxrsImpl.java
@@ -20,16 +20,16 @@
import java.util.Arrays;
import java.util.List;
-import javax.ws.rs.CookieParam;
-import javax.ws.rs.FormParam;
-import javax.ws.rs.GET;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.CookieParam;
+import jakarta.ws.rs.FormParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HeaderParam;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.MediaType;
import org.apache.servicecomb.swagger.invocation.context.InvocationContext;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/TestResponsesMeta.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/TestResponsesMeta.java
index 4f070853311..c6c9e67e0f6 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/TestResponsesMeta.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/TestResponsesMeta.java
@@ -25,7 +25,7 @@
import io.swagger.annotations.ApiResponses;
import io.swagger.annotations.ResponseHeader;
import io.swagger.models.Operation;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
public class TestResponsesMeta {
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/consumer/TestConsumerResponseMapperFactorys.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/consumer/TestConsumerResponseMapperFactorys.java
index c5004c090f6..1c689afcf81 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/consumer/TestConsumerResponseMapperFactorys.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/consumer/TestConsumerResponseMapperFactorys.java
@@ -30,7 +30,7 @@
import org.junit.Test;
import io.swagger.annotations.ApiResponse;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
public class TestConsumerResponseMapperFactorys {
@@ -43,7 +43,7 @@ interface ConsumerResponseForTest {
Response scbResponse();
@ApiResponse(code = 200, message = "", response = String.class)
- javax.ws.rs.core.Response jaxrsResponse();
+ jakarta.ws.rs.core.Response jaxrsResponse();
Optional optional();
}
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/producer/TestProducerResponseMapperFactorys.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/producer/TestProducerResponseMapperFactorys.java
index d06a541d38d..cc56523077a 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/producer/TestProducerResponseMapperFactorys.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/response/producer/TestProducerResponseMapperFactorys.java
@@ -22,7 +22,7 @@
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.swagger.engine.SwaggerEnvironment;
import org.apache.servicecomb.swagger.engine.SwaggerProducer;
@@ -33,7 +33,7 @@
import org.junit.Test;
import io.swagger.annotations.ApiResponse;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class TestProducerResponseMapperFactorys {
static class ResponseForTest {
@@ -51,8 +51,8 @@ public Response scbResponse() {
}
@ApiResponse(code = 200, message = "", response = String.class)
- public javax.ws.rs.core.Response jaxrsResponse() {
- return javax.ws.rs.core.Response.ok("jaxrs").build();
+ public jakarta.ws.rs.core.Response jaxrsResponse() {
+ return jakarta.ws.rs.core.Response.ok("jaxrs").build();
}
public Optional optional() {
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV1.java
index 88ac9815a3c..440fa289a98 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV1.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas;
-import javax.ws.rs.BeanParam;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.BeanParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.invocation.schemas.models.AddBeanParamV1;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV2.java
index d5d6b5b3548..94a677a276e 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBeanParamV2.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas;
-import javax.ws.rs.BeanParam;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.BeanParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.invocation.schemas.models.AddBeanParamV2;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV1.java
index 0b4f5e255e2..274f3846bed 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV1.java
@@ -16,8 +16,8 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV1;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV2.java
index ca18a94b03a..a1dc40c9b57 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddBodyV2.java
@@ -16,8 +16,8 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
import org.apache.servicecomb.swagger.invocation.schemas.models.AddWrapperV2;
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV1.java
index 7db891d04be..4051f5551c4 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV1.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.QueryParam;
@Path("/")
public class JaxrsAddV1 {
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV2.java
index 284fe8d2aa8..661dd749113 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/JaxrsAddV2.java
@@ -16,10 +16,10 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas;
-import javax.ws.rs.GET;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.Path;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HeaderParam;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.QueryParam;
@Path("/")
public interface JaxrsAddV2 {
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV1.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV1.java
index cf7ac00afb2..130e00ba79a 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV1.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV1.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas.models;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.QueryParam;
public class AddBeanParamV1 {
@QueryParam("x")
diff --git a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV2.java b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV2.java
index 6b4dc2074b1..42d64834631 100644
--- a/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV2.java
+++ b/swagger/swagger-invocation/invocation-core/src/test/java/org/apache/servicecomb/swagger/invocation/schemas/models/AddBeanParamV2.java
@@ -16,8 +16,8 @@
*/
package org.apache.servicecomb.swagger.invocation.schemas.models;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.HeaderParam;
+import jakarta.ws.rs.QueryParam;
public class AddBeanParamV2 {
@QueryParam("x")
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapper.java b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapper.java
index e11638aa091..549f4fc7151 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapper.java
@@ -18,7 +18,7 @@
import java.util.Map.Entry;
-import javax.ws.rs.core.Response.ResponseBuilder;
+import jakarta.ws.rs.core.Response.ResponseBuilder;
import org.apache.servicecomb.swagger.invocation.Response;
import org.apache.servicecomb.swagger.invocation.response.consumer.ConsumerResponseMapper;
@@ -29,7 +29,7 @@ public class JaxrsConsumerResponseMapper implements ConsumerResponseMapper {
@Override
public Object mapResponse(Response response) {
ResponseBuilder responseBuilder =
- javax.ws.rs.core.Response.status(response.getStatus()).entity(response.getResult());
+ jakarta.ws.rs.core.Response.status(response.getStatus()).entity(response.getResult());
MultiMap headers = response.getHeaders();
if (headers == null) {
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapperFactory.java b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapperFactory.java
index c0b0b6b53a9..241decec275 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapperFactory.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsConsumerResponseMapperFactory.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.core.Response;
import org.apache.servicecomb.swagger.invocation.response.ResponseMapperFactorys;
import org.apache.servicecomb.swagger.invocation.response.consumer.ConsumerResponseMapper;
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapper.java b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapper.java
index 4bc3afbf4d2..e1625da79d0 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapper.java
@@ -19,8 +19,8 @@
import java.util.List;
import java.util.Map.Entry;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.Response;
import org.apache.servicecomb.swagger.invocation.response.producer.ProducerResponseMapper;
@@ -28,7 +28,7 @@
public class JaxrsProducerResponseMapper implements ProducerResponseMapper {
@Override
public Response mapResponse(StatusType status, Object response) {
- javax.ws.rs.core.Response jaxrsResponse = (javax.ws.rs.core.Response) response;
+ jakarta.ws.rs.core.Response jaxrsResponse = (jakarta.ws.rs.core.Response) response;
Response cseResponse = Response.status(jaxrsResponse.getStatusInfo()).entity(jaxrsResponse.getEntity());
MultivaluedMap headers = jaxrsResponse.getHeaders();
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapperFactory.java b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapperFactory.java
index 7afbdcdde1d..e36e49407d2 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapperFactory.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/main/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/JaxrsProducerResponseMapperFactory.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.core.Response;
import org.apache.servicecomb.swagger.invocation.response.ResponseMapperFactorys;
import org.apache.servicecomb.swagger.invocation.response.producer.ProducerResponseMapper;
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsConsumerResponseMapper.java b/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsConsumerResponseMapper.java
index 1112cb8abc9..0c3e52f4f9a 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsConsumerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsConsumerResponseMapper.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.swagger.invocation.jaxrs.response;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.core.Response;
import org.apache.servicecomb.swagger.engine.SwaggerConsumer;
import org.apache.servicecomb.swagger.engine.SwaggerConsumerOperation;
@@ -28,7 +28,7 @@
import org.hamcrest.Matchers;
import io.swagger.annotations.ApiResponse;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -39,7 +39,7 @@ interface ConsumerResponseForTest {
@ApiResponse(code = 200, message = "", response = String.class)
@Path("/jaxrsResponse")
@GET
- javax.ws.rs.core.Response jaxrsResponse();
+ jakarta.ws.rs.core.Response jaxrsResponse();
}
SwaggerEnvironment environment = new SwaggerEnvironment();
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapper.java b/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapper.java
index 3f7dcb72b42..6b60db54852 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapper.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.swagger.invocation.jaxrs.response;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.swagger.invocation.Response;
import org.hamcrest.MatcherAssert;
@@ -33,7 +33,7 @@ public class TestJaxrsProducerResponseMapper {
@Test
public void mapResponse_withoutHeaders() {
- javax.ws.rs.core.Response jaxrsResponse = Mockito.mock(javax.ws.rs.core.Response.class);
+ jakarta.ws.rs.core.Response jaxrsResponse = Mockito.mock(jakarta.ws.rs.core.Response.class);
Mockito.when(jaxrsResponse.getStatusInfo()).thenReturn(Status.OK);
Mockito.when(jaxrsResponse.getEntity()).thenReturn("result");
Mockito.when(jaxrsResponse.getHeaders()).thenReturn(new MultivaluedHashMap<>());
@@ -46,7 +46,7 @@ public void mapResponse_withoutHeaders() {
@Test
public void mapResponse_withHeaders() {
- javax.ws.rs.core.Response jaxrsResponse = Mockito.mock(javax.ws.rs.core.Response.class);
+ jakarta.ws.rs.core.Response jaxrsResponse = Mockito.mock(jakarta.ws.rs.core.Response.class);
Mockito.when(jaxrsResponse.getStatusInfo()).thenReturn(Status.OK);
Mockito.when(jaxrsResponse.getEntity()).thenReturn("result");
diff --git a/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapperFactory.java b/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapperFactory.java
index 8a1acf91374..0a72f648b27 100644
--- a/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapperFactory.java
+++ b/swagger/swagger-invocation/invocation-jaxrs/src/test/java/org/apache/servicecomb/swagger/invocation/jaxrs/response/TestJaxrsProducerResponseMapperFactory.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.swagger.invocation.jaxrs.response;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.core.Response;
import org.hamcrest.MatcherAssert;
import org.hamcrest.Matchers;
diff --git a/swagger/swagger-invocation/invocation-springmvc/src/main/java/org/apache/servicecomb/swagger/invocation/springmvc/response/SpringmvcProducerResponseMapper.java b/swagger/swagger-invocation/invocation-springmvc/src/main/java/org/apache/servicecomb/swagger/invocation/springmvc/response/SpringmvcProducerResponseMapper.java
index 2ce126329ed..d9fb977202e 100644
--- a/swagger/swagger-invocation/invocation-springmvc/src/main/java/org/apache/servicecomb/swagger/invocation/springmvc/response/SpringmvcProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-springmvc/src/main/java/org/apache/servicecomb/swagger/invocation/springmvc/response/SpringmvcProducerResponseMapper.java
@@ -19,7 +19,7 @@
import java.util.List;
import java.util.Map.Entry;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.swagger.invocation.Response;
import org.apache.servicecomb.swagger.invocation.context.HttpStatus;
diff --git a/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcConsumerResponseMapper.java b/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcConsumerResponseMapper.java
index 71981bb23fa..a3c1bb91f22 100644
--- a/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcConsumerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcConsumerResponseMapper.java
@@ -30,7 +30,7 @@
import org.junit.jupiter.api.Assertions;
import org.springframework.http.ResponseEntity;
-import io.swagger.models.Swagger;
+import io.swagger.v3.oas.models.OpenAPI;
public class TestSpringmvcConsumerResponseMapper {
interface ConsumerResponseForTest {
diff --git a/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcProducerResponseMapper.java b/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcProducerResponseMapper.java
index 15d6ec42f36..cc029356aa1 100644
--- a/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcProducerResponseMapper.java
+++ b/swagger/swagger-invocation/invocation-springmvc/src/test/java/org/apache/servicecomb/swagger/invocation/springmvc/response/TestSpringmvcProducerResponseMapper.java
@@ -19,8 +19,8 @@
import java.util.Arrays;
import java.util.List;
-import javax.ws.rs.core.Response.Status;
-import javax.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.StatusType;
import org.apache.servicecomb.foundation.common.http.HttpStatus;
import org.apache.servicecomb.swagger.invocation.Response;
diff --git a/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ConstraintViolationExceptionToProducerResponseConverter.java b/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ConstraintViolationExceptionToProducerResponseConverter.java
index 58e3e4e0cfc..552c97000ba 100644
--- a/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ConstraintViolationExceptionToProducerResponseConverter.java
+++ b/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ConstraintViolationExceptionToProducerResponseConverter.java
@@ -16,8 +16,8 @@
*/
package org.apache.servicecomb.swagger.invocation.validator;
-import javax.validation.ConstraintViolationException;
-import javax.ws.rs.core.Response.Status;
+import jakarta.validation.ConstraintViolationException;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.swagger.invocation.Response;
import org.apache.servicecomb.swagger.invocation.SwaggerInvocation;
diff --git a/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/DefaultParameterNameProvider.java b/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/DefaultParameterNameProvider.java
index 09f78b2b0a9..e1a30725b45 100644
--- a/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/DefaultParameterNameProvider.java
+++ b/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/DefaultParameterNameProvider.java
@@ -26,7 +26,7 @@
import java.util.List;
import java.util.Map;
-import javax.validation.ParameterNameProvider;
+import jakarta.validation.ParameterNameProvider;
import org.apache.servicecomb.foundation.common.concurrent.ConcurrentHashMapEx;
diff --git a/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ParameterValidator.java b/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ParameterValidator.java
index 9fc573e45b9..4520268a03a 100644
--- a/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ParameterValidator.java
+++ b/swagger/swagger-invocation/invocation-validator/src/main/java/org/apache/servicecomb/swagger/invocation/validator/ParameterValidator.java
@@ -18,12 +18,12 @@
import java.util.Set;
-import javax.validation.ConstraintViolation;
-import javax.validation.ConstraintViolationException;
-import javax.validation.Validation;
-import javax.validation.ValidatorFactory;
-import javax.validation.executable.ExecutableValidator;
-import javax.validation.groups.Default;
+import jakarta.validation.ConstraintViolation;
+import jakarta.validation.ConstraintViolationException;
+import jakarta.validation.Validation;
+import jakarta.validation.ValidatorFactory;
+import jakarta.validation.executable.ExecutableValidator;
+import jakarta.validation.groups.Default;
import org.apache.servicecomb.swagger.engine.SwaggerProducerOperation;
import org.apache.servicecomb.swagger.invocation.SwaggerInvocation;
diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayClient.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayClient.java
index 3e0f98bf548..e15124dbbf7 100644
--- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayClient.java
+++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayClient.java
@@ -19,7 +19,7 @@
import java.util.concurrent.TimeoutException;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import com.google.common.annotations.VisibleForTesting;
import org.apache.servicecomb.codec.protobuf.definition.OperationProtobuf;
diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerConnection.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerConnection.java
index 61fbb2e392a..1e720fd2cd7 100644
--- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerConnection.java
+++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerConnection.java
@@ -18,7 +18,7 @@
import java.util.concurrent.CompletableFuture;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.codec.protobuf.definition.ProtobufManager;
import org.apache.servicecomb.core.Const;
diff --git a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/HighwayServerCodecFilterTest.java b/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/HighwayServerCodecFilterTest.java
index 7539e13860b..5ec1142f559 100644
--- a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/HighwayServerCodecFilterTest.java
+++ b/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/HighwayServerCodecFilterTest.java
@@ -17,7 +17,7 @@
package org.apache.servicecomb.transport.highway;
-import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
+import static jakarta.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
import static org.assertj.core.api.Assertions.assertThat;
import java.util.concurrent.CompletableFuture;
diff --git a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayClient.java b/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayClient.java
index ee3c63148cd..1c71f1c4181 100644
--- a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayClient.java
+++ b/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayClient.java
@@ -17,7 +17,7 @@
package org.apache.servicecomb.transport.highway;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.codec.protobuf.definition.OperationProtobuf;
import org.apache.servicecomb.codec.protobuf.definition.ProtobufManager;
diff --git a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientDecoder.java b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientDecoder.java
index 94ba006c70d..7e0bdacceec 100644
--- a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientDecoder.java
+++ b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientDecoder.java
@@ -19,7 +19,7 @@
import static org.apache.servicecomb.transport.rest.client.RestClientExceptionCodes.FAILED_TO_DECODE_REST_FAIL_RESPONSE;
import static org.apache.servicecomb.transport.rest.client.RestClientExceptionCodes.FAILED_TO_DECODE_REST_SUCCESS_RESPONSE;
-import javax.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.HttpHeaders;
import org.apache.servicecomb.common.rest.codec.produce.ProduceProcessor;
import org.apache.servicecomb.common.rest.codec.produce.ProduceProcessorManager;
diff --git a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientEncoder.java b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientEncoder.java
index 6cd12a31017..8ad54d55c48 100644
--- a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientEncoder.java
+++ b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientEncoder.java
@@ -16,9 +16,9 @@
*/
package org.apache.servicecomb.transport.rest.client;
-import static javax.ws.rs.core.HttpHeaders.CONTENT_TYPE;
-import static javax.ws.rs.core.MediaType.MULTIPART_FORM_DATA;
-import static javax.ws.rs.core.Response.Status.BAD_REQUEST;
+import static jakarta.ws.rs.core.HttpHeaders.CONTENT_TYPE;
+import static jakarta.ws.rs.core.MediaType.MULTIPART_FORM_DATA;
+import static jakarta.ws.rs.core.Response.Status.BAD_REQUEST;
import static org.apache.servicecomb.transport.rest.client.RestClientExceptionCodes.FAILED_TO_ENCODE_REST_CLIENT_REQUEST;
import java.net.URLEncoder;
@@ -29,8 +29,8 @@
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.servlet.http.Part;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MediaType;
import org.apache.servicecomb.common.rest.codec.RestCodec;
import org.apache.servicecomb.common.rest.codec.RestObjectMapperFactory;
diff --git a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientTransportContextFactory.java b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientTransportContextFactory.java
index ac754ac2aa3..cd1d90ab40b 100644
--- a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientTransportContextFactory.java
+++ b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/RestClientTransportContextFactory.java
@@ -16,7 +16,7 @@
*/
package org.apache.servicecomb.transport.rest.client;
-import static javax.ws.rs.core.Response.Status.BAD_REQUEST;
+import static jakarta.ws.rs.core.Response.Status.BAD_REQUEST;
import static org.apache.servicecomb.transport.rest.client.RestClientExceptionCodes.FAILED_TO_CREATE_REST_CLIENT_TRANSPORT_CONTEXT;
import org.apache.commons.lang3.StringUtils;
diff --git a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/DefaultHttpClientFilter.java b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/DefaultHttpClientFilter.java
index 9e9c7d7ce6c..e3016022a16 100644
--- a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/DefaultHttpClientFilter.java
+++ b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/DefaultHttpClientFilter.java
@@ -20,7 +20,7 @@
import java.util.Collection;
import java.util.concurrent.CompletableFuture;
-import javax.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.HttpHeaders;
import org.apache.servicecomb.common.rest.RestConst;
import org.apache.servicecomb.common.rest.codec.produce.ProduceProcessor;
diff --git a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/RestClientInvocation.java b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/RestClientInvocation.java
index 6ddf1e23b47..aaa5715805b 100644
--- a/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/RestClientInvocation.java
+++ b/transports/transport-rest/transport-rest-client/src/main/java/org/apache/servicecomb/transport/rest/client/http/RestClientInvocation.java
@@ -21,7 +21,7 @@
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeoutException;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.common.rest.RestConst;
diff --git a/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/RestFeatureController.java b/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/RestFeatureController.java
index 1b567d7cf2e..88127270084 100644
--- a/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/RestFeatureController.java
+++ b/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/RestFeatureController.java
@@ -19,13 +19,13 @@
import java.io.File;
import java.util.List;
-import javax.ws.rs.CookieParam;
-import javax.ws.rs.FormParam;
-import javax.ws.rs.GET;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.QueryParam;
+import jakarta.ws.rs.CookieParam;
+import jakarta.ws.rs.FormParam;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HeaderParam;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.QueryParam;
@Path("/")
public class RestFeatureController {
diff --git a/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/http/TestDefaultHttpClientFilter.java b/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/http/TestDefaultHttpClientFilter.java
index 2e1c18e3be4..fb687a57c88 100644
--- a/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/http/TestDefaultHttpClientFilter.java
+++ b/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/http/TestDefaultHttpClientFilter.java
@@ -22,8 +22,8 @@
import java.util.HashMap;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.common.rest.RestConst;
import org.apache.servicecomb.common.rest.codec.produce.ProduceJsonProcessor;
diff --git a/transports/transport-rest/transport-rest-servlet/src/main/java/org/apache/servicecomb/transport/rest/servlet/RestAsyncListener.java b/transports/transport-rest/transport-rest-servlet/src/main/java/org/apache/servicecomb/transport/rest/servlet/RestAsyncListener.java
index 08d87bf1ba3..95744cd7e88 100644
--- a/transports/transport-rest/transport-rest-servlet/src/main/java/org/apache/servicecomb/transport/rest/servlet/RestAsyncListener.java
+++ b/transports/transport-rest/transport-rest-servlet/src/main/java/org/apache/servicecomb/transport/rest/servlet/RestAsyncListener.java
@@ -25,8 +25,8 @@
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.servicecomb.common.rest.RestConst;
import org.apache.servicecomb.foundation.common.utils.JsonUtils;
diff --git a/transports/transport-rest/transport-rest-servlet/src/test/java/org/apache/servicecomb/transport/rest/servlet/TestRestAsyncListener.java b/transports/transport-rest/transport-rest-servlet/src/test/java/org/apache/servicecomb/transport/rest/servlet/TestRestAsyncListener.java
index 40673418e91..56b37b238a1 100644
--- a/transports/transport-rest/transport-rest-servlet/src/test/java/org/apache/servicecomb/transport/rest/servlet/TestRestAsyncListener.java
+++ b/transports/transport-rest/transport-rest-servlet/src/test/java/org/apache/servicecomb/transport/rest/servlet/TestRestAsyncListener.java
@@ -26,7 +26,7 @@
import javax.servlet.AsyncEvent;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import org.apache.servicecomb.common.rest.RestConst;
import org.apache.servicecomb.foundation.vertx.http.AbstractHttpServletRequest;
diff --git a/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java b/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
index 304aa491c88..4de3e0db186 100644
--- a/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
+++ b/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
@@ -21,8 +21,8 @@
import java.util.List;
import java.util.Set;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MediaType;
import org.apache.servicecomb.common.accessLog.AccessLogConfig;
import org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostAccessItem;
diff --git a/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/VertxRestDispatcher.java b/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/VertxRestDispatcher.java
index 1e22a127f86..5c38daba9aa 100644
--- a/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/VertxRestDispatcher.java
+++ b/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/VertxRestDispatcher.java
@@ -17,10 +17,10 @@
package org.apache.servicecomb.transport.rest.vertx;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response.Status;
-import javax.ws.rs.core.Response.Status.Family;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.Response.Status.Family;
import org.apache.servicecomb.common.rest.RestProducerInvocationFlow;
import org.apache.servicecomb.common.rest.RestVertxProducerInvocationCreator;
diff --git a/transports/transport-rest/transport-rest-vertx/src/test/java/org/apache/servicecomb/transport/rest/vertx/TestVertxRestDispatcher.java b/transports/transport-rest/transport-rest-vertx/src/test/java/org/apache/servicecomb/transport/rest/vertx/TestVertxRestDispatcher.java
index 5f33c722715..67099a56ac3 100644
--- a/transports/transport-rest/transport-rest-vertx/src/test/java/org/apache/servicecomb/transport/rest/vertx/TestVertxRestDispatcher.java
+++ b/transports/transport-rest/transport-rest-vertx/src/test/java/org/apache/servicecomb/transport/rest/vertx/TestVertxRestDispatcher.java
@@ -17,8 +17,8 @@
package org.apache.servicecomb.transport.rest.vertx;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response.Status;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response.Status;
import org.apache.http.HttpHeaders;
import org.apache.servicecomb.common.rest.RestConst;
From 62f7ce9371e64d4cfc1ded5012538d99b8ae50a1 Mon Sep 17 00:00:00 2001
From: liubao
Date: Fri, 2 Jun 2023 17:49:51 +0800
Subject: [PATCH 0212/1084] [SCB-2687]upgrade to open api 3: part1
---
.../core/definition/SchemaMeta.java | 6 +-
.../servicecomb/swagger/SwaggerUtils.java | 247 +++-------------
.../swagger/generator/OperationGenerator.java | 7 +-
.../swagger/generator/ParameterGenerator.java | 22 +-
.../swagger/generator/ParameterProcessor.java | 6 +-
.../generator/ResponseTypeProcessor.java | 4 +-
.../generator/SwaggerGeneratorUtils.java | 9 +-
.../core/AbstractOperationGenerator.java | 264 ++++++------------
.../core/model/HttpParameterType.java | 1 -
.../core/model/SwaggerOperation.java | 14 +-
.../core/model/SwaggerOperations.java | 33 +--
.../processor/annotation/AnnotationUtils.java | 47 ++--
.../annotation/ApiResponseClassProcessor.java | 3 +-
.../ApiResponseMethodProcessor.java | 18 +-
.../annotation/ResponseHeaderProcessor.java | 45 ---
.../annotation/ResponseHeadersProcessor.java | 44 ---
.../SwaggerDefinitionProcessor.java | 185 +++---------
.../annotation/models/ResponseConfig.java | 20 +-
...bstractSerializableParameterProcessor.java | 24 +-
.../parameter/ApiImplicitParamProcessor.java | 44 +--
.../parameter/ApiParamProcessor.java | 20 +-
.../parameter/JsonViewProcessor.java | 11 +-
.../parameter/PartArrayProcessor.java | 24 +-
.../processor/parameter/PartProcessor.java | 18 +-
.../DefaultResponseTypeProcessor.java | 13 +-
.../pojo/PojoOperationGenerator.java | 57 ++--
.../rest/RestOperationGenerator.java | 3 +-
...wagger.generator.MethodAnnotationProcessor | 2 -
.../servicecomb/swagger/TestSwaggerUtils.java | 89 ++----
.../generator/core/TestSwaggerGenerator.java | 3 +-
.../core/model/TestSwaggerOperations.java | 2 +-
.../CookieParamAnnotationProcessor.java | 15 +-
.../FormParamAnnotationProcessor.java | 27 +-
.../HeaderParamAnnotationProcessor.java | 16 +-
.../PathParamAnnotationProcessor.java | 13 +-
.../QueryParamAnnotationProcessor.java | 13 +-
.../SpringmvcOperationGenerator.java | 5 -
...ringmvcSerializableParameterProcessor.java | 36 +--
.../CookieValueAnnotationProcessor.java | 17 +-
.../PathVariableAnnotationProcessor.java | 18 +-
.../RequestAttributeAnnotationProcessor.java | 28 +-
.../RequestBodyAnnotationProcessor.java | 9 +-
.../RequestHeaderAnnotationProcessor.java | 16 +-
.../RequestParamAnnotationProcessor.java | 16 +-
.../RequestPartAnnotationProcessor.java | 25 +-
.../RequestPartAnnotationProcessorTest.java | 58 ++--
.../swagger/engine/SwaggerEnvironment.java | 10 +-
.../swagger/engine/SwaggerProducer.java | 6 +-
.../AbstractArgumentsMapperCreator.java | 37 +--
49 files changed, 565 insertions(+), 1085 deletions(-)
delete mode 100644 swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java
delete mode 100644 swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeadersProcessor.java
diff --git a/core/src/main/java/org/apache/servicecomb/core/definition/SchemaMeta.java b/core/src/main/java/org/apache/servicecomb/core/definition/SchemaMeta.java
index a60814292cf..623ec695b0c 100644
--- a/core/src/main/java/org/apache/servicecomb/core/definition/SchemaMeta.java
+++ b/core/src/main/java/org/apache/servicecomb/core/definition/SchemaMeta.java
@@ -32,7 +32,7 @@ public class SchemaMeta {
private final MicroserviceMeta microserviceMeta;
- private final Swagger swagger;
+ private final OpenAPI swagger;
private final String schemaId;
@@ -43,7 +43,7 @@ public class SchemaMeta {
private final VendorExtensions vendorExtensions = new VendorExtensions();
- public SchemaMeta(MicroserviceMeta microserviceMeta, String schemaId, Swagger swagger) {
+ public SchemaMeta(MicroserviceMeta microserviceMeta, String schemaId, OpenAPI swagger) {
this.microserviceMeta = microserviceMeta;
this.schemaId = schemaId;
this.swagger = swagger;
@@ -69,7 +69,7 @@ public MicroserviceMeta getMicroserviceMeta() {
return microserviceMeta;
}
- public Swagger getSwagger() {
+ public OpenAPI getSwagger() {
return swagger;
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/SwaggerUtils.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/SwaggerUtils.java
index 2328b630e4b..508575aeb4b 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/SwaggerUtils.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/SwaggerUtils.java
@@ -40,8 +40,6 @@
import org.apache.commons.lang3.math.NumberUtils;
import org.apache.servicecomb.foundation.common.base.DynamicEnum;
import org.apache.servicecomb.foundation.common.exceptions.ServiceCombException;
-import org.apache.servicecomb.foundation.common.utils.ReflectUtils;
-import org.apache.servicecomb.swagger.extend.PropertyModelConverterExt;
import org.apache.servicecomb.swagger.generator.SwaggerConst;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -54,11 +52,11 @@
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.Operation;
import io.swagger.v3.oas.models.PathItem;
-import io.swagger.v3.oas.models.Paths;
-import io.swagger.v3.oas.models.info.Info;
+import io.swagger.v3.oas.models.media.MediaType;
import io.swagger.v3.oas.models.media.Schema;
-import io.swagger.v3.oas.models.parameters.Parameter;
+import io.swagger.v3.oas.models.parameters.RequestBody;
import io.swagger.v3.oas.models.responses.ApiResponse;
+import io.swagger.v3.oas.models.servers.Server;
import jakarta.ws.rs.core.Response.Status;
import jakarta.ws.rs.core.Response.Status.Family;
@@ -70,6 +68,26 @@ public final class SwaggerUtils {
private SwaggerUtils() {
}
+ /**
+ * Only ones servers and contains only base path.
+ */
+ public static String getBasePath(OpenAPI swagger) {
+ if (swagger.getServers() == null || swagger.getServers().size() == 0) {
+ return null;
+ }
+ return swagger.getServers().get(0).getUrl();
+ }
+
+ /**
+ * Only ones servers and contains only base path.
+ */
+ public static void setBasePath(OpenAPI swagger, String basePath) {
+ if (swagger.getServers() == null || swagger.getServers().size() == 0) {
+ swagger.setServers(Arrays.asList(new Server()));
+ }
+ swagger.getServers().get(0).setUrl(basePath);
+ }
+
public static String swaggerToString(OpenAPI swagger) {
try {
return Yaml.mapper().writeValueAsString(swagger);
@@ -89,7 +107,6 @@ public static OpenAPI parseSwagger(URL url) {
public static OpenAPI parseAndValidateSwagger(URL url) {
OpenAPI swagger = SwaggerUtils.parseSwagger(url);
- SwaggerUtils.validateSwagger(swagger);
return swagger;
}
@@ -103,35 +120,9 @@ public static OpenAPI parseSwagger(String swaggerContent) {
public static OpenAPI parseAndValidateSwagger(String swaggerContent) {
OpenAPI swagger = SwaggerUtils.parseSwagger(swaggerContent);
- SwaggerUtils.validateSwagger(swagger);
return swagger;
}
- /**
- * Provide a method to validate swagger. This method is now implemented to check common errors, and the logic
- * will be changed when necessary. For internal use only.
- */
- public static void validateSwagger(OpenAPI swagger) {
- Paths paths = swagger.getPaths();
- if (paths == null) {
- return;
- }
-
- for (PathItem path : paths.values()) {
- Operation operation = path.getPost();
- if (operation == null) {
- continue;
- }
-
- for (Parameter parameter : operation.getParameters()) {
- if (BodyParameter.class.isInstance(parameter) &&
- ((BodyParameter) parameter).getSchema() == null) {
- throw new ServiceCombException("swagger validator: body parameter schema is empty.");
- }
- }
- }
- }
-
private static OpenAPI internalParseSwagger(String swaggerContent) throws IOException {
OpenAPI swagger = Yaml.mapper().readValue(swaggerContent, OpenAPI.class);
correctResponses(swagger);
@@ -179,22 +170,6 @@ public static void correctResponses(OpenAPI swagger) {
}
}
- public static Map getBodyProperties(OpenAPI swagger, Parameter parameter) {
- if (!(parameter instanceof BodyParameter)) {
- return null;
- }
-
- Model model = ((BodyParameter) parameter).getSchema();
- if (model instanceof RefModel) {
- model = swagger.getDefinitions().get(((RefModel) model).getSimpleRef());
- }
-
- if (model instanceof ModelImpl) {
- return model.getProperties();
- }
-
- return null;
- }
public static void addDefinitions(OpenAPI swagger, Type paramType) {
JavaType javaType = TypeFactory.defaultInstance().constructType(paramType);
@@ -203,115 +178,14 @@ public static void addDefinitions(OpenAPI swagger, Type paramType) {
}
Map models = ModelConverters.getInstance().readAll(javaType);
for (Entry entry : models.entrySet()) {
- if (!modelNotDuplicate(swagger, entry)) {
+ Schema schema = swagger.getComponents().getSchemas().put(entry.getKey(), entry.getValue());
+ if (schema != entry.getValue()) {
LOGGER.warn("duplicate param model: " + entry.getKey());
throw new IllegalArgumentException("duplicate param model: " + entry.getKey());
}
}
}
- private static boolean modelNotDuplicate(OpenAPI swagger, Entry entry) {
- if (null == swagger.) {
- swagger.addDefinition(entry.getKey(), entry.getValue());
- return true;
- }
- Model tempModel = swagger.getDefinitions().get(entry.getKey());
- if (null != tempModel && !tempModel.equals(entry.getValue())) {
- if (modelOfClassNotDuplicate(tempModel, entry.getValue())) {
- swagger.addDefinition(entry.getKey(), tempModel);
- return true;
- } else {
- return false;
- }
- }
- swagger.addDefinition(entry.getKey(), entry.getValue());
- return true;
- }
-
- private static boolean modelOfClassNotDuplicate(OpenAPI tempModel, Schema model) {
- String tempModelClass = (String) tempModel.getVendorExtensions().get(SwaggerConst.EXT_JAVA_CLASS);
- String modelClass = (String) model.getVendorExtensions().get(SwaggerConst.EXT_JAVA_CLASS);
- return tempModelClass.equals(modelClass);
- }
-
- public static void setParameterType(OpenAPI swagger, JavaType type, AbstractSerializableParameter> parameter) {
- addDefinitions(swagger, type);
- Property property = ModelConverters.getInstance().readAsProperty(type);
-
- if (isComplexProperty(property)) {
- // cannot set a simple parameter(header, query, etc.) as complex type
- String msg = String
- .format("not allow complex type for %s parameter, type=%s.", parameter.getIn(), type.toCanonical());
- throw new IllegalStateException(msg);
- }
- parameter.setProperty(property);
- }
-
- public static boolean isBean(Schema model) {
- return isBean(PropertyModelConverterExt.toProperty(model));
- }
-
- public static boolean isBean(Property property) {
- return property instanceof RefProperty || property instanceof ObjectProperty;
- }
-
- public static boolean isComplexProperty(Property property) {
- if (property instanceof RefProperty || property instanceof ObjectProperty || property instanceof MapProperty) {
- return true;
- }
-
- if (ArrayProperty.class.isInstance(property)) {
- return isComplexProperty(((ArrayProperty) property).getItems());
- }
-
- return false;
- }
-
- public static ModelImpl getModelImpl(OpenAPI swagger, BodyParameter bodyParameter) {
- Model model = bodyParameter.getSchema();
- if (model instanceof ModelImpl) {
- return (ModelImpl) model;
- }
-
- if (!(model instanceof RefModel)) {
- return null;
- }
-
- String simpleRef = ((RefModel) model).getSimpleRef();
- Model targetModel = swagger.getDefinitions().get(simpleRef);
- return targetModel instanceof ModelImpl ? (ModelImpl) targetModel : null;
- }
-
- public static void setCommaConsumes(Swagger swagger, String commaConsumes) {
- if (StringUtils.isEmpty(commaConsumes)) {
- return;
- }
-
- setConsumes(swagger, commaConsumes.split(","));
- }
-
- public static void setCommaConsumes(Operation operation, String commaConsumes) {
- if (StringUtils.isEmpty(commaConsumes)) {
- return;
- }
-
- setConsumes(operation, commaConsumes.split(","));
- }
-
- public static void setConsumes(Operation operation, String... consumes) {
- List consumeList = convertConsumesOrProduces(consumes);
- if (!consumeList.isEmpty()) {
- operation.setConsumes(consumeList);
- }
- }
-
- public static void setConsumes(Swagger swagger, String... consumes) {
- List consumeList = convertConsumesOrProduces(consumes);
- if (!consumeList.isEmpty()) {
- swagger.setConsumes(consumeList);
- }
- }
-
public static List convertConsumesOrProduces(String... consumesOrProduces) {
return Arrays.stream(consumesOrProduces)
.map(String::trim)
@@ -319,36 +193,6 @@ public static List convertConsumesOrProduces(String... consumesOrProduce
.collect(Collectors.toList());
}
- public static void setCommaProduces(Swagger swagger, String commaProduces) {
- if (StringUtils.isEmpty(commaProduces)) {
- return;
- }
-
- setProduces(swagger, commaProduces.split(","));
- }
-
- public static void setCommaProduces(Operation operation, String commaProduces) {
- if (StringUtils.isEmpty(commaProduces)) {
- return;
- }
-
- setProduces(operation, commaProduces.split(","));
- }
-
- public static void setProduces(Operation operation, String... produces) {
- List produceList = convertConsumesOrProduces(produces);
- if (!produceList.isEmpty()) {
- operation.setProduces(produceList);
- }
- }
-
- public static void setProduces(Swagger swagger, String... produces) {
- List produceList = convertConsumesOrProduces(produces);
- if (!produceList.isEmpty()) {
- swagger.setProduces(produceList);
- }
- }
-
public static boolean hasAnnotation(Class> cls, Class extends Annotation> annotation) {
if (cls.getAnnotation(annotation) != null) {
return true;
@@ -363,28 +207,14 @@ public static boolean hasAnnotation(Class> cls, Class extends Annotation> an
return false;
}
- public static boolean isRawJsonType(Parameter param) {
- Object rawJson = param.getVendorExtensions().get(SwaggerConst.EXT_RAW_JSON_TYPE);
+ public static boolean isRawJsonType(RequestBody param) {
+ Object rawJson = param.getExtensions().get(SwaggerConst.EXT_RAW_JSON_TYPE);
if (rawJson instanceof Boolean) {
return (boolean) rawJson;
}
return false;
}
- public static Class> getInterface(OpenAPI swagger) {
- Info info = swagger.getInfo();
- if (info == null) {
- return null;
- }
-
- String name = getInterfaceName(info.getVendorExtensions());
- if (StringUtils.isEmpty(name)) {
- return null;
- }
-
- return ReflectUtils.getClassByName(name);
- }
-
public static String getClassName(Map vendorExtensions) {
return getVendorExtension(vendorExtensions, SwaggerConst.EXT_JAVA_CLASS);
}
@@ -402,6 +232,11 @@ public static T getVendorExtension(Map vendorExtensions, Str
return (T) vendorExtensions.get(key);
}
+ public static boolean isBean(RequestBody body) {
+ MediaType type = body.getContent().values().iterator().next();
+ return type.getSchema().get$ref() != null;
+ }
+
public static boolean isBean(Type type) {
if (type == null) {
return false;
@@ -425,22 +260,4 @@ public static boolean isBean(Type type) {
&& !cls.getName().equals("org.springframework.web.multipart.MultipartFile")
&& !Part.class.isAssignableFrom(cls));
}
-
- public static boolean isFileParameter(Parameter parameter) {
- if (!(parameter instanceof FormParameter)) {
- return false;
- }
-
- FormParameter formParameter = (FormParameter) parameter;
- if (FileProperty.isType(formParameter.getType(), formParameter.getFormat())) {
- return true;
- }
-
- Property property = formParameter.getItems();
- if (!ArrayProperty.isType(formParameter.getType()) || property == null) {
- return false;
- }
-
- return FileProperty.isType(property.getType(), property.getFormat());
- }
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/OperationGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/OperationGenerator.java
index 01d54df5f59..f4a0b04333e 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/OperationGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/OperationGenerator.java
@@ -16,8 +16,9 @@
*/
package org.apache.servicecomb.swagger.generator;
-import io.swagger.models.Operation;
-import io.swagger.models.properties.Property;
+
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.parameters.HeaderParameter;
public interface OperationGenerator {
Operation getOperation();
@@ -26,7 +27,7 @@ public interface OperationGenerator {
String getHttpMethod();
- void addMethodResponseHeader(String name, Property property);
+ void addMethodResponseHeader(String name, HeaderParameter property);
void addOperationToSwagger();
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterGenerator.java
index af1e73666f3..85d34a9650a 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterGenerator.java
@@ -27,7 +27,8 @@
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.type.TypeFactory;
-import io.swagger.models.parameters.Parameter;
+import io.swagger.v3.oas.models.parameters.Parameter;
+import io.swagger.v3.oas.models.parameters.RequestBody;
public class ParameterGenerator {
private final String parameterName;
@@ -43,6 +44,8 @@ public class ParameterGenerator {
private Parameter generatedParameter;
+ private RequestBody requestBody;
+
public ParameterGenerator(String parameterName, List annotations, JavaType genericType,
HttpParameterType httpParameterType, Parameter generatedParameter) {
this.parameterName = parameterName;
@@ -52,6 +55,15 @@ public ParameterGenerator(String parameterName, List annotations, Ja
this.generatedParameter = generatedParameter;
}
+ public ParameterGenerator(String parameterName, List annotations, JavaType genericType,
+ HttpParameterType httpParameterType, RequestBody requestBody) {
+ this.parameterName = parameterName;
+ this.annotations = annotations;
+ this.genericType = genericType;
+ this.httpParameterType = httpParameterType;
+ this.requestBody = requestBody;
+ }
+
public ParameterGenerator(Executable executable, Map> methodAnnotationMap,
String defaultName,
Annotation[] parameterAnnotations, Type genericType) {
@@ -109,4 +121,12 @@ public Parameter getGeneratedParameter() {
public void setGeneratedParameter(Parameter generatedParameter) {
this.generatedParameter = generatedParameter;
}
+
+ public void setRequestBody(RequestBody requestBody) {
+ this.requestBody = requestBody;
+ }
+
+ public RequestBody getRequestBody() {
+ return this.requestBody;
+ }
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterProcessor.java
index b4fdf66cec2..8f56eeed58d 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ParameterProcessor.java
@@ -23,8 +23,8 @@
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.type.TypeFactory;
-import io.swagger.models.Operation;
import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.Operation;
public interface ParameterProcessor {
Type getProcessType();
@@ -41,10 +41,10 @@ default Type getGenericType(ANNOTATION parameterAnnotation) {
HttpParameterType getHttpParameterType(ANNOTATION parameterAnnotation);
- void fillParameter(Swagger swagger, Operation operation, SWAGGER_PARAMETER parameter, JavaType type,
+ void fillParameter(OpenAPI swagger, Operation operation, SWAGGER_PARAMETER parameter, JavaType type,
ANNOTATION annotation);
- default void fillParameter(Swagger swagger, Operation operation, SWAGGER_PARAMETER parameter, Type type,
+ default void fillParameter(OpenAPI swagger, Operation operation, SWAGGER_PARAMETER parameter, Type type,
ANNOTATION annotation) {
fillParameter(swagger, operation, parameter, TypeFactory.defaultInstance().constructType(type), annotation);
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ResponseTypeProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ResponseTypeProcessor.java
index 6578cc171d1..60ec44de498 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ResponseTypeProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/ResponseTypeProcessor.java
@@ -18,7 +18,7 @@
import java.lang.reflect.Type;
-import io.swagger.models.Model;
+import io.swagger.v3.oas.models.media.Schema;
public interface ResponseTypeProcessor {
Type getProcessType();
@@ -37,5 +37,5 @@ default Type extractResponseType(Type genericResponseType) {
return extractResponseType(null, null, genericResponseType);
}
- Model process(SwaggerGenerator swaggerGenerator, OperationGenerator operationGenerator, Type genericResponseType);
+ Schema process(SwaggerGenerator swaggerGenerator, OperationGenerator operationGenerator, Type genericResponseType);
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/SwaggerGeneratorUtils.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/SwaggerGeneratorUtils.java
index 61bd96fb474..140dd9bcf6a 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/SwaggerGeneratorUtils.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/SwaggerGeneratorUtils.java
@@ -43,8 +43,7 @@
import com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition;
import com.fasterxml.jackson.databind.type.TypeFactory;
-import io.swagger.models.parameters.Parameter;
-import io.swagger.util.Json;
+import io.swagger.v3.core.util.Json;
public final class SwaggerGeneratorUtils {
private static final Logger LOGGER = LoggerFactory.getLogger(SwaggerGeneratorUtils.class);
@@ -181,7 +180,7 @@ public static String collectParameterName(Executable executable, Annotation[] an
// it's ambiguous to use different name in different annotation
// so we only read the first available name
for (Annotation annotation : annotations) {
- ParameterProcessor processor = findParameterProcessors(annotation.annotationType());
+ ParameterProcessor, Annotation> processor = findParameterProcessors(annotation.annotationType());
if (processor == null) {
continue;
}
@@ -215,7 +214,7 @@ public static String collectParameterName(Executable executable, Annotation[] an
public static Type collectGenericType(List annotations, Type defaultType) {
Type genericType = null;
for (Annotation annotation : annotations) {
- ParameterProcessor processor = findParameterProcessors(annotation.annotationType());
+ ParameterProcessor, Annotation> processor = findParameterProcessors(annotation.annotationType());
if (processor == null) {
continue;
}
@@ -258,7 +257,7 @@ public static HttpParameterType collectHttpParameterType(List annota
}
private static HttpParameterType collectHttpParameterType(Annotation parameterAnnotation, Type type) {
- ParameterProcessor processor = findParameterProcessors(type);
+ ParameterProcessor, Annotation> processor = findParameterProcessors(type);
if (processor == null) {
return null;
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
index 2d037c4b483..fc683237c55 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
@@ -16,54 +16,19 @@
*/
package org.apache.servicecomb.swagger.generator.core;
-import com.fasterxml.jackson.databind.BeanDescription;
-import com.fasterxml.jackson.databind.JavaType;
-import com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition;
-import com.fasterxml.jackson.databind.type.TypeFactory;
-import com.google.common.reflect.TypeToken;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiParam;
-import io.swagger.converter.ModelConverters;
-import io.swagger.models.HttpMethod;
-import io.swagger.models.Model;
-import io.swagger.models.ModelImpl;
-import io.swagger.models.Operation;
-import io.swagger.models.Path;
-import io.swagger.models.Response;
-import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.models.parameters.AbstractSerializableParameter;
-import io.swagger.models.parameters.BodyParameter;
-import io.swagger.models.parameters.CookieParameter;
-import io.swagger.models.parameters.FormParameter;
-import io.swagger.models.parameters.HeaderParameter;
-import io.swagger.models.parameters.Parameter;
-import io.swagger.models.parameters.PathParameter;
-import io.swagger.models.parameters.QueryParameter;
-import io.swagger.models.properties.Property;
-import io.swagger.models.properties.StringProperty;
-import io.swagger.util.Json;
-import io.swagger.util.ReflectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.servicecomb.config.inject.PlaceholderResolver;
-import org.apache.servicecomb.swagger.SwaggerUtils;
-import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
-import org.apache.servicecomb.swagger.generator.OperationGenerator;
-import org.apache.servicecomb.swagger.generator.ParameterGenerator;
-import org.apache.servicecomb.swagger.generator.ParameterProcessor;
-import org.apache.servicecomb.swagger.generator.ResponseTypeProcessor;
-import org.apache.servicecomb.swagger.generator.SwaggerConst;
-import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
-import org.apache.servicecomb.swagger.generator.core.utils.MethodUtils;
+import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.collectAnnotations;
+import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findMethodAnnotationProcessor;
+import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findParameterProcessors;
+import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findResponseTypeProcessor;
+import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.isContextParameter;
+import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.postProcessOperation;
-import javax.servlet.http.HttpServletResponse;
-import jakarta.ws.rs.core.MediaType;
import java.lang.annotation.Annotation;
-import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Comparator;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
@@ -71,20 +36,49 @@
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
-import java.util.Comparator;
import java.util.stream.Collectors;
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.collectAnnotations;
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findMethodAnnotationProcessor;
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findParameterProcessors;
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findResponseTypeProcessor;
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.isContextParameter;
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.postProcessOperation;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.servicecomb.config.inject.PlaceholderResolver;
+import org.apache.servicecomb.swagger.SwaggerUtils;
+import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
+import org.apache.servicecomb.swagger.generator.OperationGenerator;
+import org.apache.servicecomb.swagger.generator.ParameterGenerator;
+import org.apache.servicecomb.swagger.generator.ParameterProcessor;
+import org.apache.servicecomb.swagger.generator.ResponseTypeProcessor;
+import org.apache.servicecomb.swagger.generator.SwaggerConst;
+import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
+import org.apache.servicecomb.swagger.generator.core.utils.MethodUtils;
+
+import com.fasterxml.jackson.databind.BeanDescription;
+import com.fasterxml.jackson.databind.JavaType;
+import com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition;
+import com.fasterxml.jackson.databind.type.TypeFactory;
+import com.google.common.reflect.TypeToken;
+
+import io.swagger.v3.core.util.Json;
+import io.swagger.v3.core.util.ReflectionUtils;
+import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.PathItem;
+import io.swagger.v3.oas.models.headers.Header;
+import io.swagger.v3.oas.models.media.Content;
+import io.swagger.v3.oas.models.media.Schema;
+import io.swagger.v3.oas.models.parameters.CookieParameter;
+import io.swagger.v3.oas.models.parameters.HeaderParameter;
+import io.swagger.v3.oas.models.parameters.Parameter;
+import io.swagger.v3.oas.models.parameters.PathParameter;
+import io.swagger.v3.oas.models.parameters.QueryParameter;
+import io.swagger.v3.oas.models.parameters.RequestBody;
+import io.swagger.v3.oas.models.responses.ApiResponse;
+import jakarta.ws.rs.core.MediaType;
public abstract class AbstractOperationGenerator implements OperationGenerator {
protected AbstractSwaggerGenerator swaggerGenerator;
- protected Swagger swagger;
+ protected OpenAPI swagger;
protected Class> clazz;
@@ -100,7 +94,7 @@ public abstract class AbstractOperationGenerator implements OperationGenerator {
// 根据方法上独立的ResponseHeader(s)标注生成的数据
// 如果Response中不存在对应的header,则会将这些header补充进去
- protected Map methodResponseHeaders = new LinkedHashMap<>();
+ protected Map methodResponseHeaders = new LinkedHashMap<>();
private static final List NOT_NULL_ANNOTATIONS = Arrays.asList("NotBlank", "NotEmpty");
@@ -115,7 +109,7 @@ public AbstractOperationGenerator(AbstractSwaggerGenerator swaggerGenerator, Met
}
@Override
- public void addMethodResponseHeader(String name, Property header) {
+ public void addMethodResponseHeader(String name, HeaderParameter header) {
methodResponseHeaders.put(name, header);
}
@@ -169,8 +163,8 @@ public void generate() {
protected void scanMethodAnnotation() {
for (Annotation annotation : Arrays.stream(method.getAnnotations())
- .sorted(Comparator.comparing(a -> a.annotationType().getName()))
- .collect(Collectors.toList())
+ .sorted(Comparator.comparing(a -> a.annotationType().getName()))
+ .collect(Collectors.toList())
) {
MethodAnnotationProcessor processor = findMethodAnnotationProcessor(annotation.annotationType());
if (processor == null) {
@@ -213,7 +207,12 @@ protected void scanMethodParameters() {
throw new IllegalStateException(
String.format("not support duplicated parameter, name=%s.", parameterGenerator.getParameterName()));
}
- swaggerOperation.addParameter(parameterGenerator.getGeneratedParameter());
+ if (parameterGenerator.getRequestBody() != null) {
+ swaggerOperation.setRequestBody(parameterGenerator.getRequestBody());
+ }
+ if (parameterGenerator.getGeneratedParameter() != null) {
+ swaggerOperation.addParametersItem(parameterGenerator.getGeneratedParameter());
+ }
}
}
@@ -261,12 +260,12 @@ protected void initMethodParameterGenerators(Map> metho
}
protected boolean isAggregatedParameter(ParameterGenerator parameterGenerator,
- java.lang.reflect.Parameter methodParameter) {
+ java.lang.reflect.Parameter methodParameter) {
return false;
}
protected void extractAggregatedParameterGenerators(Map> methodAnnotationMap,
- java.lang.reflect.Parameter methodParameter) {
+ java.lang.reflect.Parameter methodParameter) {
JavaType javaType = TypeFactory.defaultInstance().constructType(methodParameter.getParameterizedType());
BeanDescription beanDescription = Json.mapper().getSerializationConfig().introspect(javaType);
for (BeanPropertyDefinition propertyDefinition : beanDescription.findProperties()) {
@@ -294,22 +293,24 @@ protected void initRemainMethodAnnotationsParameterGenerators(Map> initMethodAnnotationByParameterName() {
Map> methodAnnotations = new LinkedHashMap<>();
for (Annotation annotation : method.getAnnotations()) {
- if (annotation instanceof ApiImplicitParams) {
- for (ApiImplicitParam apiImplicitParam : ((ApiImplicitParams) annotation).value()) {
+ if (annotation instanceof io.swagger.v3.oas.annotations.Parameters) {
+ for (io.swagger.v3.oas.annotations.Parameter apiImplicitParam
+ : ((io.swagger.v3.oas.annotations.Parameters) annotation).value()) {
addMethodAnnotationByParameterName(methodAnnotations, apiImplicitParam.name(), apiImplicitParam);
}
continue;
}
- if (annotation instanceof ApiParam) {
- addMethodAnnotationByParameterName(methodAnnotations, ((ApiParam) annotation).name(), annotation);
+ if (annotation instanceof io.swagger.v3.oas.annotations.Parameter) {
+ addMethodAnnotationByParameterName(methodAnnotations,
+ ((io.swagger.v3.oas.annotations.Parameter) annotation).name(), annotation);
}
}
return methodAnnotations;
}
private void addMethodAnnotationByParameterName(Map> methodAnnotations, String name,
- Annotation annotation) {
+ Annotation annotation) {
if (StringUtils.isEmpty(name)) {
throw new IllegalStateException(String.format("%s.name should not be empty. method=%s:%s",
annotation.annotationType().getSimpleName(),
@@ -351,6 +352,10 @@ protected Parameter createParameter(ParameterGenerator parameterGenerator) {
Parameter parameter = createParameter(parameterGenerator.getHttpParameterType());
parameterGenerator.setGeneratedParameter(parameter);
}
+ if (parameterGenerator.getRequestBody() != null) {
+ RequestBody requestBody = createRequestBody(parameterGenerator.getHttpParameterType());
+ parameterGenerator.setRequestBody(requestBody);
+ }
parameterGenerator.getGeneratedParameter().setName(parameterGenerator.getParameterName());
return parameterGenerator.getGeneratedParameter();
}
@@ -363,19 +368,24 @@ protected Parameter createParameter(HttpParameterType httpParameterType) {
return new QueryParameter();
case HEADER:
return new HeaderParameter();
- case FORM:
- return new FormParameter();
case COOKIE:
return new CookieParameter();
+ default:
+ throw new IllegalStateException("not support httpParameterType " + httpParameterType);
+ }
+ }
+
+ protected RequestBody createRequestBody(HttpParameterType httpParameterType) {
+ switch (httpParameterType) {
case BODY:
- return new BodyParameter();
+ return new RequestBody();
default:
throw new IllegalStateException("not support httpParameterType " + httpParameterType);
}
}
- protected void fillParameter(Swagger swagger, Parameter parameter, String parameterName, JavaType type,
- List annotations) {
+ protected void fillParameter(OpenAPI swagger, Parameter parameter, String parameterName, JavaType type,
+ List annotations) {
for (Annotation annotation : annotations) {
ParameterProcessor processor = findParameterProcessors(annotation.annotationType());
if (processor != null) {
@@ -391,89 +401,6 @@ protected void fillParameter(Swagger swagger, Parameter parameter, String parame
if (processor != null) {
processor.fillParameter(swagger, swaggerOperation, parameter, type, null);
}
-
- if (parameter instanceof AbstractSerializableParameter) {
- io.swagger.util.ParameterProcessor.applyAnnotations(swagger, parameter, type, annotations);
- annotations.stream().forEach(annotation -> {
- if (NOT_NULL_ANNOTATIONS.contains(annotation.annotationType().getSimpleName())){
- parameter.setRequired(true);
- }
- });
- return;
- }
-
- fillBodyParameter(swagger, parameter, type, annotations);
- }
-
- protected void fillBodyParameter(Swagger swagger, Parameter parameter, Type type, List annotations) {
- // so strange, for bodyParameter, swagger return a new instance
- // that will cause lost some information
- // so we must merge them
- BodyParameter newBodyParameter = (BodyParameter) io.swagger.util.ParameterProcessor.applyAnnotations(
- swagger, parameter, type, annotations);
-
- // swagger missed enum data, fix it
- ModelImpl model = SwaggerUtils.getModelImpl(swagger, newBodyParameter);
- if (model != null) {
- Property property = ModelConverters.getInstance().readAsProperty(type);
- if (property instanceof StringProperty) {
- model.setEnum(((StringProperty) property).getEnum());
- }
- }
-
- // swagger 2.0 do not support NotBlank and NotEmpty annotations, fix it
- if (((JavaType) type).getBindings().getTypeParameters().isEmpty()) {
- convertAnnotationProperty(((JavaType) type).getRawClass());
- } else {
- ((JavaType) type).getBindings().getTypeParameters().
- forEach(javaType -> convertAnnotationProperty(javaType.getRawClass()));
- }
-
- mergeBodyParameter((BodyParameter) parameter, newBodyParameter);
- }
-
- private void convertAnnotationProperty(Class> beanClass) {
- Map definitions = swagger.getDefinitions();
- if (definitions == null){
- return;
- }
- Field[] fields = beanClass.getDeclaredFields();
- Model model = definitions.get(beanClass.getSimpleName());
- if (model == null) {
- return;
- }
- Map properties = model.getProperties();
- if (properties != null) {
- Arrays.stream(fields).forEach(field -> {
- boolean requireItem = Arrays.stream(field.getAnnotations()).
- anyMatch(annotation -> NOT_NULL_ANNOTATIONS.contains(annotation.annotationType().getSimpleName()));
- if (requireItem) {
- Property property = properties.get(field.getName());
- if (property != null) {
- property.setRequired(true);
- }
- }
- });
- }
- }
-
-
- private void mergeBodyParameter(BodyParameter bodyParameter, BodyParameter fromBodyParameter) {
- if (fromBodyParameter.getExamples() != null) {
- bodyParameter.setExamples(fromBodyParameter.getExamples());
- }
- if (fromBodyParameter.getRequired()) {
- bodyParameter.setRequired(true);
- }
- if (StringUtils.isNotEmpty(fromBodyParameter.getDescription())) {
- bodyParameter.setDescription(fromBodyParameter.getDescription());
- }
- if (StringUtils.isNotEmpty(fromBodyParameter.getAccess())) {
- bodyParameter.setAccess(fromBodyParameter.getAccess());
- }
- if (fromBodyParameter.getSchema() != null) {
- bodyParameter.setSchema(fromBodyParameter.getSchema());
- }
}
@Override
@@ -482,50 +409,42 @@ public void addOperationToSwagger() {
return;
}
- Path pathObj = swagger.getPath(path);
+ PathItem pathObj = swagger.getPaths().get(path);
if (pathObj == null) {
- pathObj = new Path();
+ pathObj = new PathItem();
swagger.path(path, pathObj);
}
- HttpMethod hm = HttpMethod.valueOf(httpMethod.toUpperCase(Locale.US));
- if (pathObj.getOperationMap().get(hm) != null) {
+ if (pathObj.readOperations().size() > 0) {
throw new IllegalStateException(String.format("Only allowed one default path. method=%s:%s.",
method.getDeclaringClass().getName(),
method.getName()));
}
- pathObj.set(httpMethod, swaggerOperation);
+ pathObj.operation(PathItem.HttpMethod.valueOf(httpMethod), swaggerOperation);
}
public void correctOperation() {
- if (swaggerOperation.getConsumes() == null) {
- if (swaggerOperation.getParameters().stream()
- .anyMatch(SwaggerUtils::isFileParameter)) {
- swaggerOperation.addConsumes(MediaType.MULTIPART_FORM_DATA);
- }
- }
-
SwaggerUtils.correctResponses(swaggerOperation);
addHeaderToResponse();
}
private void addHeaderToResponse() {
- for (Entry responseEntry : swaggerOperation.getResponses().entrySet()) {
- Response response = responseEntry.getValue();
+ for (Entry responseEntry : swaggerOperation.getResponses().entrySet()) {
+ ApiResponse response = responseEntry.getValue();
- for (Entry entry : methodResponseHeaders.entrySet()) {
+ for (Entry entry : methodResponseHeaders.entrySet()) {
if (response.getHeaders() != null && response.getHeaders().containsKey(entry.getKey())) {
continue;
}
- response.addHeader(entry.getKey(), entry.getValue());
+ response.addHeaderObject(entry.getKey(), new Header().schema(entry.getValue().getSchema()));
}
}
}
public void scanResponse() {
if (swaggerOperation.getResponses() != null) {
- Response successResponse = swaggerOperation.getResponses().get(SwaggerConst.SUCCESS_KEY);
+ ApiResponse successResponse = swaggerOperation.getResponses().get(SwaggerConst.SUCCESS_KEY);
if (successResponse != null) {
if (successResponse.getResponseSchema() == null) {
// 标注已经定义了response,但是是void,这可能是在标注上未定义
@@ -537,13 +456,14 @@ public void scanResponse() {
}
}
- Model model = createResponseModel();
- Response response = new Response();
- response.setResponseSchema(model);
- swaggerOperation.addResponse(SwaggerConst.SUCCESS_KEY, response);
+ Schema model = createResponseModel();
+ ApiResponse response = new ApiResponse();
+ response.content(new Content().addMediaType(MediaType.APPLICATION_JSON,
+ new io.swagger.v3.oas.models.media.MediaType().schema(model)));
+ swaggerOperation.getResponses().addApiResponse(SwaggerConst.SUCCESS_KEY, response);
}
- protected Model createResponseModel() {
+ protected Schema createResponseModel() {
Type responseType =
TypeToken.of(clazz)
.resolveType(method.getGenericReturnType())
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/HttpParameterType.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/HttpParameterType.java
index 872c11c6708..9192b235431 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/HttpParameterType.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/HttpParameterType.java
@@ -25,7 +25,6 @@ public enum HttpParameterType {
QUERY,
HEADER,
COOKIE,
- FORM,
BODY;
public static HttpParameterType parse(String value) {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java
index acebddb9ea9..8615178a51c 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperation.java
@@ -19,12 +19,12 @@
import java.util.HashMap;
import java.util.Map;
-import io.swagger.models.HttpMethod;
-import io.swagger.models.Operation;
import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.PathItem.HttpMethod;
public class SwaggerOperation {
- private final Swagger swagger;
+ private final OpenAPI swagger;
private final String path;
@@ -34,7 +34,7 @@ public class SwaggerOperation {
private final Map parameterIndexes = new HashMap<>();
- public SwaggerOperation(Swagger swagger, String path, HttpMethod httpMethod, Operation operation) {
+ public SwaggerOperation(OpenAPI swagger, String path, HttpMethod httpMethod, Operation operation) {
this.swagger = swagger;
this.path = path;
this.httpMethod = httpMethod;
@@ -45,7 +45,7 @@ public SwaggerOperation(Swagger swagger, String path, HttpMethod httpMethod, Ope
}
}
- public Swagger getSwagger() {
+ public OpenAPI getSwagger() {
return swagger;
}
@@ -64,8 +64,4 @@ public Operation getOperation() {
public String getOperationId() {
return operation.getOperationId();
}
-
- public Integer findPrameterIndex(String name) {
- return parameterIndexes.get(name);
- }
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java
index c998a47aa18..487685b228f 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/model/SwaggerOperations.java
@@ -23,49 +23,50 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
-import io.swagger.models.HttpMethod;
-import io.swagger.models.Operation;
-import io.swagger.models.Path;
import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.PathItem;
+import io.swagger.v3.oas.models.PathItem.HttpMethod;
+import io.swagger.v3.oas.models.Paths;
public class SwaggerOperations {
public static SwaggerOperations generate(Class> cls) {
- Swagger swagger = SwaggerGenerator.create(cls).generate();
+ OpenAPI swagger = SwaggerGenerator.create(cls).generate();
return new SwaggerOperations(swagger);
}
- private final Swagger swagger;
+ private final OpenAPI swagger;
// key is operationId
private final Map operations = new HashMap<>();
- public SwaggerOperations(Swagger swagger) {
+ public SwaggerOperations(OpenAPI swagger) {
this.swagger = swagger;
- Map paths = swagger.getPaths();
- if (paths == null) {
+ Paths paths = swagger.getPaths();
+ if (paths == null || paths.isEmpty()) {
return;
}
- for (Entry pathEntry : paths.entrySet()) {
- for (Entry operationEntry : pathEntry.getValue().getOperationMap().entrySet()) {
- Operation operation = operationEntry.getValue();
- if (StringUtils.isEmpty(operation.getOperationId())) {
+ for (Entry pathEntry : paths.entrySet()) {
+ for (Entry operationEntry : pathEntry.getValue().readOperationsMap().entrySet()) {
+ if (StringUtils.isEmpty(operationEntry.getValue().getOperationId())) {
throw new IllegalStateException(String
.format("OperationId can not be empty, path=%s, httpMethod=%s.",
pathEntry.getKey(), operationEntry.getKey()));
}
SwaggerOperation swaggerOperation = new SwaggerOperation(swagger, pathEntry.getKey(), operationEntry.getKey(),
- operation);
- if (operations.putIfAbsent(operation.getOperationId(), swaggerOperation) != null) {
+ operationEntry.getValue());
+ if (operations.putIfAbsent(operationEntry.getValue().getOperationId(), swaggerOperation) != null) {
throw new IllegalStateException(
- "please make sure operationId is unique, duplicated operationId is " + operation.getOperationId());
+ "please make sure operationId is unique, duplicated operationId is " + operationEntry.getValue()
+ .getOperationId());
}
}
}
}
- public Swagger getSwagger() {
+ public OpenAPI getSwagger() {
return swagger;
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java
index dd910605190..77fb0dcf590 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/AnnotationUtils.java
@@ -29,42 +29,34 @@
import org.apache.servicecomb.swagger.generator.core.processor.annotation.models.ResponseConfigBase;
import org.apache.servicecomb.swagger.generator.core.processor.annotation.models.ResponseHeaderConfig;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ExampleProperty;
-import io.swagger.annotations.ResponseHeader;
-import io.swagger.converter.ModelConverters;
-import io.swagger.models.Model;
-import io.swagger.models.Operation;
-import io.swagger.models.Response;
+import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.models.properties.ArrayProperty;
-import io.swagger.models.properties.MapProperty;
-import io.swagger.models.properties.Property;
-import io.swagger.util.ReflectionUtils;
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.headers.Header;
+import io.swagger.v3.oas.models.media.Schema;
public final class AnnotationUtils {
private AnnotationUtils() {
}
- public static void appendDefinition(Swagger swagger, Map newDefinitions) {
+ public static void appendDefinition(OpenAPI swagger, Map newDefinitions) {
if (newDefinitions.isEmpty()) {
return;
}
- Map definitions = swagger.getDefinitions();
+ Map definitions = swagger.getComponents().getSchemas();
if (definitions == null) {
definitions = new LinkedHashMap<>();
- swagger.setDefinitions(definitions);
+ swagger.getComponents().schemas(definitions);
}
definitions.putAll(newDefinitions);
}
- private static ResponseConfig convert(ApiOperation apiOperation) {
+ private static ResponseConfig convert(io.swagger.v3.oas.annotations.Operation apiOperation) {
ResponseConfig responseConfig = new ResponseConfig();
- responseConfig.setCode(apiOperation.code());
+ responseConfig.setCode(apiOperation.responses()[0].responseCode());
responseConfig.setResponseClass(apiOperation.response());
responseConfig.setResponseContainer(apiOperation.responseContainer());
responseConfig.setResponseReference(apiOperation.responseReference());
@@ -84,32 +76,33 @@ private static ResponseConfig convert(ApiResponse apiResponse) {
return responseConfig;
}
- public static ResponseHeaderConfig convert(ResponseHeader responseHeader) {
- if (StringUtils.isEmpty(responseHeader.name())) {
+ public static ResponseHeaderConfig convert(Header responseHeader) {
+ if (StringUtils.isEmpty(responseHeader.getSchema().getName())) {
return null;
}
ResponseHeaderConfig config = new ResponseHeaderConfig();
- config.setName(responseHeader.name());
- config.setDescription(responseHeader.description());
- config.setResponseClass(responseHeader.response());
+ config.setName(responseHeader.getSchema().getName());
+ config.setDescription(responseHeader.getSchema().getDescription());
+ config.setResponseClass(responseHeader.getSchema().);
config.setResponseContainer(responseHeader.responseContainer());
return config;
}
- public static void addResponse(Swagger swagger, Operation operation, ApiOperation apiOperation) {
+ public static void addResponse(OpenAPI swagger, Operation operation
+ , io.swagger.v3.oas.annotations.Operation apiOperation) {
ResponseConfig responseConfig = convert(apiOperation);
generateResponse(swagger, responseConfig);
mergeResponse(operation, responseConfig);
}
- public static void addResponse(Swagger swagger, ApiResponse apiResponse) {
+ public static void addResponse(OpenAPI swagger, ApiResponse apiResponse) {
ResponseConfig responseConfig = convert(apiResponse);
generateResponse(swagger, responseConfig);
swagger.response(String.valueOf(responseConfig.getCode()), responseConfig.getResponse());
}
- public static void addResponse(Swagger swagger, Operation operation, ApiResponse apiResponse) {
+ public static void addResponse(OpenAPI swagger, Operation operation, ApiResponse apiResponse) {
ResponseConfig responseConfig = convert(apiResponse);
generateResponse(swagger, responseConfig);
mergeResponse(operation, responseConfig);
@@ -143,8 +136,8 @@ private static void mergeResponse(Operation operation, ResponseConfig responseCo
}
}
- private static void generateResponse(Swagger swagger, ResponseConfig responseConfig) {
- Response response = new Response();
+ private static void generateResponse(OpenAPI swagger, ResponseConfig responseConfig) {
+ ApiResponse response = new ApiResponse();
Property property = generateResponseProperty(swagger, responseConfig);
if (property != null) {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java
index 590f2e7bb79..0b28a93acb0 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseClassProcessor.java
@@ -21,7 +21,8 @@
import org.apache.servicecomb.swagger.generator.ClassAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
-import io.swagger.annotations.ApiResponse;
+import io.swagger.v3.oas.annotations.responses.ApiResponse;
+
public class ApiResponseClassProcessor implements ClassAnnotationProcessor {
@Override
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java
index dcb83e57237..4a914fc1cf4 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ApiResponseMethodProcessor.java
@@ -17,26 +17,26 @@
package org.apache.servicecomb.swagger.generator.core.processor.annotation;
import java.lang.reflect.Type;
+import java.util.Arrays;
import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.OperationGenerator;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
-import io.swagger.annotations.ApiResponse;
+import io.swagger.v3.oas.annotations.responses.ApiResponses;
-public class ApiResponseMethodProcessor implements MethodAnnotationProcessor {
+public class ApiResponseMethodProcessor implements MethodAnnotationProcessor {
@Override
public Type getProcessType() {
- return ApiResponse.class;
+ return ApiResponses.class;
}
- // swagger declared not to use ApiResponse directly
- // but support this is not so bad
@Override
public void process(SwaggerGenerator swaggerGenerator, OperationGenerator operationGenerator,
- ApiResponse apiResponse) {
- AnnotationUtils.addResponse(swaggerGenerator.getOpenAPI(),
- operationGenerator.getOperation(),
- apiResponse);
+ ApiResponses apiResponses) {
+ Arrays.stream(apiResponses.value()).forEach(apiResponse ->
+ AnnotationUtils.addResponse(swaggerGenerator.getOpenAPI(),
+ operationGenerator.getOperation(),
+ apiResponse));
}
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java
deleted file mode 100644
index 9af7bc01ca0..00000000000
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeaderProcessor.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF 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.apache.servicecomb.swagger.generator.core.processor.annotation;
-
-import java.lang.reflect.Type;
-
-import org.apache.servicecomb.swagger.generator.core.processor.annotation.models.ResponseHeaderConfig;
-import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
-import org.apache.servicecomb.swagger.generator.OperationGenerator;
-import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
-
-import io.swagger.annotations.ResponseHeader;
-import io.swagger.models.properties.Property;
-
-public class ResponseHeaderProcessor implements MethodAnnotationProcessor {
- @Override
- public Type getProcessType() {
- return ResponseHeader.class;
- }
-
- @Override
- public void process(SwaggerGenerator swaggerGenerator, OperationGenerator operationGenerator,
- ResponseHeader responseHeader) {
- ResponseHeaderConfig config = AnnotationUtils.convert(responseHeader);
- if (config != null) {
- Property property =
- AnnotationUtils.generateResponseHeaderProperty(swaggerGenerator.getOpenAPI(), config);
- operationGenerator.addMethodResponseHeader(config.getName(), property);
- }
- }
-}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeadersProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeadersProcessor.java
deleted file mode 100644
index 55afe29cecc..00000000000
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/ResponseHeadersProcessor.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF 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.apache.servicecomb.swagger.generator.core.processor.annotation;
-
-import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findMethodAnnotationProcessor;
-
-import java.lang.reflect.Type;
-
-import org.apache.servicecomb.swagger.extend.annotations.ResponseHeaders;
-import org.apache.servicecomb.swagger.generator.MethodAnnotationProcessor;
-import org.apache.servicecomb.swagger.generator.OperationGenerator;
-import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
-
-import io.swagger.annotations.ResponseHeader;
-
-public class ResponseHeadersProcessor implements MethodAnnotationProcessor {
- @Override
- public Type getProcessType() {
- return ResponseHeaders.class;
- }
-
- @Override
- public void process(SwaggerGenerator swaggerGenerator, OperationGenerator operationGenerator,
- ResponseHeaders responseHeaders) {
- MethodAnnotationProcessor processor = findMethodAnnotationProcessor(ResponseHeader.class);
- for (ResponseHeader responseHeader : responseHeaders.value()) {
- processor.process(swaggerGenerator, operationGenerator, responseHeader);
- }
- }
-}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java
index cb33d5f5a13..f7a168dad53 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/SwaggerDefinitionProcessor.java
@@ -19,62 +19,56 @@
import java.lang.reflect.Type;
import java.util.Arrays;
-import java.util.LinkedHashMap;
import java.util.List;
-import java.util.Map;
import java.util.stream.Collectors;
-import javax.annotation.Nonnull;
-
import org.apache.commons.lang3.StringUtils;
-import org.apache.servicecomb.swagger.SwaggerUtils;
import org.apache.servicecomb.swagger.generator.ClassAnnotationProcessor;
import org.apache.servicecomb.swagger.generator.SwaggerGenerator;
-import io.swagger.annotations.Scope;
-import io.swagger.annotations.SecurityDefinition;
-import io.swagger.annotations.SwaggerDefinition;
-import io.swagger.models.Contact;
-import io.swagger.models.ExternalDocs;
-import io.swagger.models.Info;
-import io.swagger.models.License;
-import io.swagger.models.Scheme;
+import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.models.Tag;
-import io.swagger.models.auth.ApiKeyAuthDefinition;
-import io.swagger.models.auth.BasicAuthDefinition;
-import io.swagger.models.auth.In;
-import io.swagger.models.auth.OAuth2Definition;
-import io.swagger.models.auth.SecuritySchemeDefinition;
-import io.swagger.util.BaseReaderUtils;
+import io.swagger.v3.oas.models.info.Contact;
+import io.swagger.v3.oas.models.info.Info;
+import io.swagger.v3.oas.models.info.License;
+import io.swagger.v3.oas.models.servers.Server;
+import io.swagger.v3.oas.models.tags.Tag;
-public class SwaggerDefinitionProcessor implements ClassAnnotationProcessor {
+public class SwaggerDefinitionProcessor implements ClassAnnotationProcessor {
@Override
public Type getProcessType() {
- return SwaggerDefinition.class;
+ return OpenAPIDefinition.class;
}
@Override
- public void process(SwaggerGenerator swaggerGenerator, SwaggerDefinition definitionAnnotation) {
- Swagger swagger = swaggerGenerator.getOpenAPI();
+ public void process(SwaggerGenerator swaggerGenerator, OpenAPIDefinition definitionAnnotation) {
+ OpenAPI swagger = swaggerGenerator.getOpenAPI();
- if (StringUtils.isNotEmpty(definitionAnnotation.basePath())) {
- swaggerGenerator.setBasePath(definitionAnnotation.basePath());
- }
- if (StringUtils.isNotEmpty(definitionAnnotation.host())) {
- swagger.setHost(definitionAnnotation.host());
+ if (definitionAnnotation.servers() != null) {
+ swagger.setServers(convertServers(definitionAnnotation.servers()));
}
- SwaggerUtils.setConsumes(swagger, definitionAnnotation.consumes());
- SwaggerUtils.setProduces(swagger, definitionAnnotation.produces());
- swagger.setSchemes(convertSchemes(definitionAnnotation.schemes()));
swagger.setTags(convertTags(definitionAnnotation.tags()));
- swagger.setSecurityDefinitions(convertSecurityDefinitions(definitionAnnotation.securityDefinition()));
swagger.setInfo(convertInfo(definitionAnnotation.info()));
- swagger.setExternalDocs(convertExternalDocs(definitionAnnotation.externalDocs()));
}
- private Info convertInfo(io.swagger.annotations.Info infoAnnotation) {
+ private List convertServers(io.swagger.v3.oas.annotations.servers.Server[] servers) {
+ if (servers == null) {
+ return null;
+ }
+
+ return Arrays.stream(servers).map(this::convertServer).collect(Collectors.toList());
+ }
+
+ private Server convertServer(io.swagger.v3.oas.annotations.servers.Server server) {
+ Server item = new Server();
+ item.setUrl(server.url());
+ item.setDescription(server.description());
+ // TODO: add other information
+ return item;
+ }
+
+ private Info convertInfo(io.swagger.v3.oas.annotations.info.Info infoAnnotation) {
if (infoAnnotation == null) {
return null;
}
@@ -91,12 +85,11 @@ private Info convertInfo(io.swagger.annotations.Info infoAnnotation) {
}
info.setContact(convertContact(infoAnnotation.contact()));
info.setLicense(convertLicense(infoAnnotation.license()));
- info.getVendorExtensions().putAll(BaseReaderUtils.parseExtensions(infoAnnotation.extensions()));
return info;
}
- private License convertLicense(io.swagger.annotations.License licenseAnnotation) {
+ private License convertLicense(io.swagger.v3.oas.annotations.info.License licenseAnnotation) {
License license = new License();
if (StringUtils.isNotEmpty(licenseAnnotation.name())) {
@@ -113,7 +106,7 @@ private License convertLicense(io.swagger.annotations.License licenseAnnotation)
return license;
}
- private Contact convertContact(io.swagger.annotations.Contact contactAnnotation) {
+ private Contact convertContact(io.swagger.v3.oas.annotations.info.Contact contactAnnotation) {
Contact contact = new Contact();
if (StringUtils.isNotEmpty(contactAnnotation.name())) {
@@ -135,7 +128,7 @@ private Contact convertContact(io.swagger.annotations.Contact contactAnnotation)
return contact;
}
- private List convertTags(io.swagger.annotations.Tag[] tagArray) {
+ private List convertTags(io.swagger.v3.oas.annotations.tags.Tag[] tagArray) {
if (tagArray == null) {
return null;
}
@@ -147,122 +140,10 @@ private List convertTags(io.swagger.annotations.Tag[] tagArray) {
return tags.isEmpty() ? null : tags;
}
- private Tag convertTag(io.swagger.annotations.Tag tagAnnotation) {
+ private Tag convertTag(io.swagger.v3.oas.annotations.tags.Tag tagAnnotation) {
Tag tag = new Tag();
tag.setName(tagAnnotation.name());
tag.setDescription(tagAnnotation.description());
- tag.setExternalDocs(convertExternalDocs(tagAnnotation.externalDocs()));
- tag.getVendorExtensions().putAll(BaseReaderUtils.parseExtensions(tagAnnotation.extensions()));
return tag;
}
-
- private ExternalDocs convertExternalDocs(io.swagger.annotations.ExternalDocs annotationExternalDocs) {
- ExternalDocs externalDocs = new ExternalDocs();
-
- if (StringUtils.isNotEmpty(annotationExternalDocs.url())) {
- externalDocs.setUrl(annotationExternalDocs.url());
- }
- if (StringUtils.isNotEmpty(annotationExternalDocs.value())) {
- externalDocs.setDescription(annotationExternalDocs.value());
- }
-
- if (StringUtils.isEmpty(externalDocs.getUrl()) && StringUtils.isEmpty(externalDocs.getDescription())) {
- return null;
- }
-
- return externalDocs;
- }
-
- private List convertSchemes(SwaggerDefinition.Scheme[] schemeArray) {
- if (schemeArray == null) {
- return null;
- }
-
- return Arrays.stream(schemeArray)
- .map(this::convertScheme)
- .collect(Collectors.toList());
- }
-
- private Scheme convertScheme(io.swagger.annotations.SwaggerDefinition.Scheme annotationScheme) {
- if (SwaggerDefinition.Scheme.DEFAULT.equals(annotationScheme)) {
- return Scheme.HTTP;
- }
- return Scheme.forValue(annotationScheme.name());
- }
-
- private Map convertSecurityDefinitions(
- SecurityDefinition securityDefinition) {
- Map definitionMap = new LinkedHashMap<>();
-
- Arrays.stream(securityDefinition.oAuth2Definitions())
- .forEach(annotation -> addSecurityDefinition(definitionMap, annotation.key(), convertOAuth2(annotation)));
- Arrays.stream(securityDefinition.apiKeyAuthDefinitions())
- .forEach(annotation -> addSecurityDefinition(definitionMap, annotation.key(), convertApiKey(annotation)));
- Arrays.stream(securityDefinition.basicAuthDefinitions())
- .forEach(annotation -> addSecurityDefinition(definitionMap, annotation.key(), convertBasicAuth(annotation)));
-
- return definitionMap.isEmpty() ? null : definitionMap;
- }
-
- private void addSecurityDefinition(Map definitionMap,
- String key, SecuritySchemeDefinition definition) {
- if (StringUtils.isEmpty(key) || definition == null) {
- return;
- }
-
- definitionMap.put(key, definition);
- }
-
- private String emptyAsNull(@Nonnull String value) {
- return value.isEmpty() ? null : value;
- }
-
- private OAuth2Definition convertOAuth2(io.swagger.annotations.OAuth2Definition annotation) {
- OAuth2Definition definition = new OAuth2Definition();
-
- definition.setDescription(emptyAsNull(annotation.description()));
- definition.setFlow(emptyAsNull(annotation.flow().name()));
- definition.setAuthorizationUrl(emptyAsNull(annotation.authorizationUrl()));
- definition.setTokenUrl(emptyAsNull(annotation.tokenUrl()));
- for (Scope scope : annotation.scopes()) {
- if (StringUtils.isEmpty(scope.name())) {
- continue;
- }
- definition.addScope(scope.name(), scope.description());
- }
-
- if (definition.getDescription() == null
- && definition.getFlow() == null
- && definition.getAuthorizationUrl() == null
- && definition.getTokenUrl() == null
- && definition.getScopes() == null) {
- return null;
- }
-
- return definition;
- }
-
- private SecuritySchemeDefinition convertApiKey(io.swagger.annotations.ApiKeyAuthDefinition annotation) {
- if (StringUtils.isEmpty(annotation.name())) {
- return null;
- }
-
- ApiKeyAuthDefinition definition = new ApiKeyAuthDefinition();
-
- definition.setDescription(emptyAsNull(annotation.description()));
- definition.setIn(In.forValue(annotation.in().name()));
- definition.setName(annotation.name());
-
- return definition;
- }
-
- private SecuritySchemeDefinition convertBasicAuth(io.swagger.annotations.BasicAuthDefinition annotation) {
- if (annotation.description().isEmpty()) {
- return null;
- }
-
- BasicAuthDefinition definition = new BasicAuthDefinition();
- definition.setDescription(annotation.description());
- return definition;
- }
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/models/ResponseConfig.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/models/ResponseConfig.java
index 64831e8b6b0..05e2077dac7 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/models/ResponseConfig.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/models/ResponseConfig.java
@@ -18,12 +18,14 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
import org.apache.servicecomb.swagger.generator.core.processor.annotation.AnnotationUtils;
-import io.swagger.annotations.Example;
-import io.swagger.annotations.ResponseHeader;
-import io.swagger.models.Response;
+import io.swagger.v3.oas.models.examples.Example;
+import io.swagger.v3.oas.models.headers.Header;
+import io.swagger.v3.oas.models.responses.ApiResponse;
/**
* Response的数据源太多,单单是标注都有N个
@@ -35,7 +37,7 @@ public class ResponseConfig extends ResponseConfigBase {
private List responseHeaders;
// 根据本config生成的response
- private Response response;
+ private ApiResponse response;
private Example examples;
@@ -51,10 +53,10 @@ public List getResponseHeaders() {
return responseHeaders;
}
- public void setResponseHeaders(ResponseHeader[] responseHeaders) {
+ public void setResponseHeaders(Map responseHeaders) {
this.responseHeaders = new ArrayList<>();
- for (ResponseHeader header : responseHeaders) {
- ResponseHeaderConfig config = AnnotationUtils.convert(header);
+ for (Entry header : responseHeaders.entrySet()) {
+ ResponseHeaderConfig config = AnnotationUtils.convert(header.getValue());
if (config != null) {
this.responseHeaders.add(config);
}
@@ -65,11 +67,11 @@ public void setResponseHeaders(ResponseHeader[] responseHeaders) {
}
}
- public Response getResponse() {
+ public ApiResponse getResponse() {
return response;
}
- public void setResponse(Response response) {
+ public void setResponse(ApiResponse response) {
this.response = response;
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java
index 2f6e5fd7ae5..65fda700344 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/AbstractSerializableParameterProcessor.java
@@ -17,30 +17,8 @@
package org.apache.servicecomb.swagger.generator.core.processor.parameter;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.servicecomb.swagger.SwaggerUtils;
import org.apache.servicecomb.swagger.generator.ParameterProcessor;
-import com.fasterxml.jackson.databind.JavaType;
-
-import io.swagger.models.Operation;
-import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.models.parameters.AbstractSerializableParameter;
-
-public abstract class AbstractSerializableParameterProcessor, ANNOTATION> implements
+public abstract class AbstractSerializableParameterProcessor implements
ParameterProcessor {
- @Override
- public void fillParameter(Swagger swagger, Operation operation, SWAGGER_PARAMETER parameter, JavaType type,
- ANNOTATION annotation) {
- SwaggerUtils.setParameterType(swagger, type, parameter);
-
- String defaultValue = readDefaultValue(annotation);
- if (StringUtils.isNotEmpty(defaultValue)) {
- parameter.setDefaultValue(defaultValue);
- }
- }
-
- protected String readDefaultValue(ANNOTATION annotation) {
- return "";
- }
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java
index 870e2ad80f4..d1e088c82b2 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiImplicitParamProcessor.java
@@ -18,56 +18,42 @@
import java.lang.reflect.Type;
-import org.apache.commons.lang3.StringUtils;
import org.apache.servicecomb.swagger.generator.ParameterProcessor;
import org.apache.servicecomb.swagger.generator.core.model.HttpParameterType;
import com.fasterxml.jackson.databind.JavaType;
-import com.google.inject.util.Types;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.models.Operation;
import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.models.parameters.Parameter;
-import io.swagger.util.ReflectionUtils;
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.parameters.Parameter;
-public class ApiImplicitParamProcessor implements ParameterProcessor {
+
+public class ApiImplicitParamProcessor implements ParameterProcessor {
@Override
public Class> getProcessType() {
- return ApiImplicitParam.class;
+ return io.swagger.v3.oas.annotations.Parameter.class;
}
@Override
- public String getParameterName(ApiImplicitParam apiImplicitParam) {
+ public String getParameterName(io.swagger.v3.oas.annotations.Parameter apiImplicitParam) {
return apiImplicitParam.name();
}
@Override
- public Type getGenericType(ApiImplicitParam apiImplicitParam) {
- Type dataTypeClass = apiImplicitParam.dataTypeClass();
- if (ReflectionUtils.isVoid(dataTypeClass)) {
- if (StringUtils.isEmpty(apiImplicitParam.dataType())) {
- return null;
- }
-
- dataTypeClass = ReflectionUtils.typeFromString(apiImplicitParam.dataType());
- }
-
- if ("array".equals(apiImplicitParam.type())) {
- return Types.arrayOf(dataTypeClass);
- }
-
- return dataTypeClass;
+ public Type getGenericType(io.swagger.v3.oas.annotations.Parameter apiImplicitParam) {
+ // TODO: not complete
+ return null;
}
@Override
- public HttpParameterType getHttpParameterType(ApiImplicitParam apiImplicitParam) {
- return HttpParameterType.parse(apiImplicitParam.paramType());
+ public HttpParameterType getHttpParameterType(io.swagger.v3.oas.annotations.Parameter apiImplicitParam) {
+ return HttpParameterType.parse(apiImplicitParam.in().name());
}
@Override
- public void fillParameter(Swagger swagger, Operation operation, Parameter parameter, JavaType type,
- ApiImplicitParam apiImplicitParam) {
- // no need fill, will process by io.swagger.util.ParameterProcessor.applyAnnotations
+ public void fillParameter(OpenAPI swagger, Operation operation, Parameter parameter, JavaType type,
+ io.swagger.v3.oas.annotations.Parameter parameter2) {
+ // TODO: not complete
}
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java
index 600f941dff0..ffaca7cc849 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/processor/parameter/ApiParamProcessor.java
@@ -21,30 +21,30 @@
import com.fasterxml.jackson.databind.JavaType;
-import io.swagger.annotations.ApiParam;
-import io.swagger.models.Operation;
import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.models.parameters.Parameter;
+import io.swagger.v3.oas.models.Operation;
+import io.swagger.v3.oas.models.parameters.Parameter;
-public class ApiParamProcessor implements ParameterProcessor {
+public class ApiParamProcessor implements ParameterProcessor