JPA отображение денежной суммы
Я заинтересован во включении JSR 354 Money API в свое приложение и хотел бы иметь возможность отображать MoneyAmount как Embeddable с JPA, но мы, похоже, не можем этого сделать, потому что конструктор без аргументов класса реализации Moneta является закрытым и JPA (или по крайней мере, Hibernate) требует его защиты.
Мы попытались расширить его, чтобы обеспечить защищенный конструктор, но класс является окончательным, поэтому не может этого сделать.
Во-первых, предполагая:
- Я не единственный, кто может захотеть сделать это и
- Совместимость с JPA важна для этого JSR
Я бы предложил усовершенствовать спецификацию, чтобы требовать реализации для обеспечения защищенного конструктора для этой цели?
Во-вторых, рассмотрит ли команда Moneta RI ослабление доступа конструктора arg по умолчанию к защищенному уровню? У него не должно быть никаких недостатков, если урок окончательный?
В-третьих, если это изменение может занять некоторое время, может ли кто-нибудь придумать элегантный обходной путь в это время (кроме разрыва нашей собственной реализации)?
1 ответ
Jadira User Types поддерживает типы Moneta, возможно, это решит вашу проблему.