JPA отображение денежной суммы

Я заинтересован во включении JSR 354 Money API в свое приложение и хотел бы иметь возможность отображать MoneyAmount как Embeddable с JPA, но мы, похоже, не можем этого сделать, потому что конструктор без аргументов класса реализации Moneta является закрытым и JPA (или по крайней мере, Hibernate) требует его защиты.

Мы попытались расширить его, чтобы обеспечить защищенный конструктор, но класс является окончательным, поэтому не может этого сделать.

Во-первых, предполагая:

  1. Я не единственный, кто может захотеть сделать это и
  2. Совместимость с JPA важна для этого JSR

Я бы предложил усовершенствовать спецификацию, чтобы требовать реализации для обеспечения защищенного конструктора для этой цели?

Во-вторых, рассмотрит ли команда Moneta RI ослабление доступа конструктора arg по умолчанию к защищенному уровню? У него не должно быть никаких недостатков, если урок окончательный?

В-третьих, если это изменение может занять некоторое время, может ли кто-нибудь придумать элегантный обходной путь в это время (кроме разрыва нашей собственной реализации)?

1 ответ

Jadira User Types поддерживает типы Moneta, возможно, это решит вашу проблему.

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