private StructInfo requestStructInfo(Class<?> type) {
        final JavaType javaType = mapper.constructType(type);
        if (!mapper.canDeserialize(javaType)) {
            return newReflectiveStructInfo(type);
        }
        return new StructInfo(type.getName(), requestFieldInfos(javaType),
                              classDescriptionInfo(javaType.getRawClass()));
    }
A default {@link DescriptiveTypeInfoProvider} to create a {@link StructInfo} from a {@code typeDescriptor}.
If {@code typeDescriptor} is unknown type, Jackson is used to try to extract fields
and their metadata.
core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProvider.java