Перенёс цикл экспорта CSV с Java на Groovy, и теперь задача падает на строке, где нет nickname. В Java FieldEncoder три перегрузки encode (String, Number, Collection), и null должен превращаться в токен NULL. В старом Java-коде encoder.encode(user.getNickname()) с null работает нормально.
Сторона Groovy:
def cells = COLUMNS.collect { col -> encoder.encode(row[col]) }
В строке 3 нет ключа nickname. Первая строка ошибки говорит про ambiguous method overloading, а список аргументов — [null]. Я вывожу row[col] и там null, так что map выглядит нормально. Ещё менял nullToken, разницы нет.
Groovy 4.0.22 возвращает что-то странное для отсутствующего ключа или не поддерживает опцию с null-токеном? Почему Java справляется с null здесь, а Groovy нет?
Спасибо за любую помощь.