private FieldToRowDataConverter createArrayConverterByObjectMapper(ArrayType arrayType) {
        FieldToRowDataConverter elementConverter = createConverter(arrayType.getElementType());
        final Class<?> elementClass = LogicalTypeUtils.toInternalConversionClass(arrayType.getElementType());
        return origStr -> {
            JsonNode jsonNode = objectMapper.readTree(origStr);
            final ArrayNode node = (ArrayNode) jsonNode;
            final Object[] array = (Object[]) Array.newInstance(elementClass, node.size());
            for (int i = 0; i < node.size(); i++) {
                final JsonNode innerNode = node.get(i);
                array[i] = elementConverter.convert(getStringFromJsonNode(innerNode));
            }
            return new GenericArrayData(array);
        };
    }
Creates a runtime converter which assuming input object is not null.
inlong-sort/sort-formats/format-rowdata/format-rowdata-json/src/main/java/org/apache/inlong/sort/formats/json/FieldToRowDataConverters.java