I think JPA 2.1 didn't go that far. If you use Hibernate and you can use its specific functions (which are not yet supported by JPA), you can simply use the Hibernate Composite User Type .
Hibernate SQL (, Currency, Money).
, -, DAO/PersistenceUnits.
-, - , Hibernate.