Quarkus: конструктор в перечислении нельзя применить к заданным типам

Я начинаю работать с Quarkus и пытаюсь использовать перечисление в своей сущности, но продолжаю получать эту ошибку:

[ERROR] ~/ConnectorFormatEnum.java:[10,12] constructor ConnectorFormatEnum in enum *.ConnectorFormatEnum cannot be applied to given types;
[ERROR]   required: no arguments
[ERROR]   found:    java.lang.String,boolean
[ERROR]   reason: actual and formal argument lists differ in length

Вот мой класс перечисления:

@RequiredArgsConstructor
public enum ConnectorFormatEnum {
SOCKET("SOCKET",true),
CABLE("CABLE",true),
UNKNOWN(null,false);

private final String value;
private final Boolean ocpi;

@JsonValue
public String getValue() {
    return value;
  }
}

И вот моя сущность, где я хочу использовать перечисление:

@Data
@Entity
@Table(schema = "ocpi_locations", name = "connector")
public class ConnectorEntity {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_connector")
private Long id;

@Column(name = "internal", nullable = false, insertable = true, updatable = false)
private String internal;

@Column(name = "id", length=36)
private String idConnector;


@Enumerated(EnumType.STRING)
@Type(type = "pgsql_enum")
@Column(name = "format")
private ConnectorFormatEnum format = ConnectorFormatEnum.UNKNOWN;

@Column(name = "voltage")
private Integer voltage;

@Column(name = "amperage")
private Integer amperage;

@Column(name = "terms_and_conditions")
private String termsAndConditions;

@CreationTimestamp
@Column(updatable = false)
private Instant createdAt;

@UpdateTimestamp
@Column(name = "updated_at", nullable = false, insertable = false )
private Instant lastUpdated;

@UpdateTimestamp
@Column(name = "deleted_at", nullable = false, insertable = false )
private Instant deletedAt;

}

У меня также есть другие перечисления в моем проекте, которые я пытаюсь использовать с другими объектами, но я получаю одну и ту же ошибку для всех из них, я делаю что-то не так?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
81
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Возможное решение

Согласно stacktrace, я считаю, что в Enum вам не хватает только конструктора:

@RequiredArgsConstructor
public enum ConnectorFormatEnum {
    SOCKET("SOCKET",true),
    CABLE("CABLE",true),
    UNKNOWN(null,false);

    private final String value;
    private final Boolean ocpi;

    // Add this constructor
    private ConnectorFormatEnum(String value, boolean ocpi) {
        this.value = value;
        this.ocpi = ocpi;
    }

    @JsonValue
    public String getValue() {
        return value;
    }
}

Другие вопросы по теме