Данные о микронавтах и ​​поля Enum в сущностях - PullRequest
1 голос
/ 14 февраля 2020

Поддерживает ли перечисление micronaut-data поля перечисления?

Попытка создания поля перечисления привела к ошибке. Добавлен конвертер типов с использованием платформы Micronaut TypeConverter, но все равно та же ошибка, в которой указано

java.lang.NoSuchMethodError: 'void company.SyncRun.setStatus(java.lang.String)', где SyncRun.status - поле enum, в котором есть конвертер, как показано ниже.

@Factory
class TypeConverters {

  @Singleton
  fun syncStatusToString(): TypeConverter<SyncStatus, String> {
    return TypeConverter { value, targetType, context -> Optional.of(value.name) }
  }

  @Singleton
  fun stringToSyncStatus(): TypeConverter<String, SyncStatus> {
    return TypeConverter { value, targetType, context -> Optional.of(SyncStatus.valueOf(value)) }
  }
}

1 Ответ

1 голос
/ 14 февраля 2020

С JPA вы должны просто аннотировать свойство enum с помощью @Enumerated(EnumType.STRING).

С JDB C это работает из коробки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...