@Override
	public Schema resolve(AnnotatedType type, ModelConverterContext context, Iterator<ModelConverter> chain) {
		if (chain.hasNext()) {
			JavaType javaType = objectMapperProvider.jsonMapper().constructType(type.getType());
			if (javaType != null) {
				Class<?> cls = javaType.getRawClass();
				Schema<?> resolvedSchema = chain.next().resolve(type, context, chain);
				List<Field> fields = FieldUtils.getAllFieldsList(cls);
				List<PropertyDescriptor> clsProperties = new ArrayList<>();
				try {
					clsProperties = Arrays.asList(Introspector.getBeanInfo(cls).getPropertyDescriptors());
				}
				catch (IntrospectionException ignored) {
					LOGGER.warn(ignored.getMessage());
				}
				if (!CollectionUtils.isEmpty(fields) || !CollectionUtils.isEmpty(clsProperties)) {
					if (!type.isSchemaProperty()) {
						Schema existingSchema = context.resolve(type);
						setJavadocDescription(cls, fields, clsProperties, existingSchema, false);
					}
					else if (resolvedSchema != null && resolvedSchema.get$ref() != null && resolvedSchema.get$ref().contains(AnnotationsUtils.COMPONENTS_REF)) {
						String schemaName = resolvedSchema.get$ref().substring(Components.COMPONENTS_SCHEMAS_REF.length());
						Schema existingSchema = context.getDefinedModels().get(schemaName);
						setJavadocDescription(cls, fields, clsProperties, existingSchema, false);
					}
					else {
						try {
							Field processedTypesField = FieldUtils.getDeclaredField(ModelConverterContextImpl.class, "processedTypes", true);
							Set<AnnotatedType> processedType = (Set<AnnotatedType>) processedTypesField.get(context);
							if (processedType.contains(type))
								setJavadocDescription(cls, fields, clsProperties, resolvedSchema, true);
						}
						catch (IllegalAccessException e) {
							LOGGER.warn(e.getMessage());
						}
					}
				}
				return resolvedSchema;
			}
		}
		return null;
	}
Resolve schema.

@param type    the type
@param context the context
@param chain   the chain
@return the schema
springdoc-openapi-starter-common/src/main/java/org/springdoc/core/customizers/JavadocPropertyCustomizer.java