Skip to content

Commit 68506cc

Browse files
author
QIURC
committed
fix bug JsonPropertyIntrospector处理record类型里的枚举值时,会报空指针异常——修复checkstyle #4983
1 parent f6e7160 commit 68506cc

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestSwaggerUtils.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import java.util.HashMap;
2929
import java.util.List;
3030
import java.util.Map;
31+
import java.util.logging.Logger;
3132

3233
import org.apache.servicecomb.foundation.common.utils.ReflectUtils;
3334
import org.apache.servicecomb.swagger.SwaggerUtils;
@@ -52,6 +53,7 @@
5253

5354
@SuppressWarnings("rawtypes")
5455
public class TestSwaggerUtils {
56+
Logger LOGGER = Logger.getLogger(TestSwaggerUtils.class.getName());
5557

5658
@Test
5759
public void testSchemaMethod() {
@@ -146,7 +148,7 @@ private void testAllType(Class clazz1, Class clazz2) {
146148
testExcep(value.getGenericType(), field.getGenericType());
147149
fail("IllegalArgumentException expected");
148150
} catch (IllegalArgumentException e) {
149-
System.out.println(value.getGenericType()+ " " + field.getGenericType() + " " +e.getMessage());
151+
LOGGER.warning(value.getGenericType() + " " + field.getGenericType() + " " + e.getMessage());
150152
MatcherAssert.assertThat(e.getMessage(), containsString("duplicate param model:"));
151153
}
152154
}
@@ -183,13 +185,11 @@ public void test_resolve_type_schemas_correct() {
183185
Assertions.assertEquals("object", schema.getType());
184186

185187
openAPI = new OpenAPI();
186-
schema = SwaggerUtils.resolveTypeSchemas(openAPI, TestTypeClass.class);
187-
schema = SwaggerUtils.getSchema(openAPI, schema); // resolve reference
188+
schema = SwaggerUtils.getSchema(openAPI, SwaggerUtils.resolveTypeSchemas(openAPI, TestTypeClass.class)); // resolve reference
188189
Assertions.assertEquals("object", schema.getType());
189190

190191
openAPI = new OpenAPI();
191-
schema = SwaggerUtils.resolveTypeSchemas(openAPI, TestTypeRecord.class);
192-
schema = SwaggerUtils.getSchema(openAPI, schema); // resolve reference
192+
schema = SwaggerUtils.getSchema(openAPI, SwaggerUtils.resolveTypeSchemas(openAPI, TestTypeRecord.class)); // resolve reference
193193
Assertions.assertEquals("object", schema.getType());
194194
}
195195
}

swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/pojo/TestTypeClass.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,4 @@ public TestTypeEnumLang getTestTypeEnumLang() {
3131
public void setTestTypeEnumLang(TestTypeEnumLang testTypeEnumLang) {
3232
this.testTypeEnumLang = testTypeEnumLang;
3333
}
34-
}
34+
}

swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/pojo/TestTypeEnumLang.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@
1919

2020
public enum TestTypeEnumLang {
2121
JAVA, CHINESE, UNKNOWN;
22-
}
22+
}

swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/pojo/TestTypeRecord.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,4 @@
2222
@Schema(name = "YYY")
2323
public record TestTypeRecord(
2424
@Schema(description = "language") TestTypeEnumLang testTypeEnumLang) {
25-
}
25+
}

0 commit comments

Comments
 (0)