Hibernate @Embeddable статический финал

У меня странное поведение. У меня есть объект, который использует @Embeddables для хранения информации о типе (TerminalType). Этот тип должен иметь только фиксированные значения. Поэтому я создал такие константы, как CLIENT, BROWSER, EXTRENAL.

@Embeddable
@Audited
public class TerminalType extends DomainValue {

   private static final long serialVersionUID = 1L;

   public static final TerminalType CLIENT = new TerminalType("CLIENT");

   public static final TerminalType BROWSER = new TerminalType("BROWSER");

   public static final TerminalType EXTERNAL = new TerminalType("EXTERNAL");

   protected TerminalType() {

   }

   protected TerminalType(String id) {
      this.value = id;
   }

   @Column(name = "VALUE")
   private String value;

   /* only getter for the value ... */

}

Этот класс затем используется в Терминале сущности

@Entity
@Audited
public class Terminal  {

   private static final long serialVersionUID = 1L;

   @Id
   protected String terminalName;


   @NotNull
   @Embedded
   @AttributeOverride(name = "value", column = @Column(name = "TERMINAL_TYPE"))
   protected TerminalType type;

   protected Terminal() {

   }

   /* setter and getter ... */

}

Проблема в том, что константы значений иногда меняются. Приложение может работать часами, но через некоторое время постоянный КЛИЕНТ имеет значение "БРАУЗЕР".

Я понятия не имею, что / кто меняет константу? Любая идея поможет! Спасибо!

0 ответов

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