Driver PostgreSQL JDBC telah memilih cara yang sayangnya untuk mewakili kode tipe standar non-JDBC. Mereka hanya memetakan semuanya ke Types.OTHER. Singkat cerita, Anda perlu mengaktifkan pemetaan tipe Hibernate khusus untuk menangani pemetaan UUID (ke kolom tipe data uuid khusus postgres):
@Id
@Column(name = "customer_id")
@org.hibernate.annotations.Type(type="org.hibernate.type.PostgresUUIDType")
private UUID id;
atau lebih ringkasnya:
@Id
@Column(name = "customer_id")
@org.hibernate.annotations.Type(type="pg-uuid")
private UUID id;
Opsi lain (lebih baik) adalah mendaftarkan org.hibernate.type.PostgresUUIDType sebagai pemetaan tipe Hibernate default untuk semua atribut yang diekspos sebagai java.util.UUID. Itu tercakup dalam dokumentasi @ http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch06.html#types-registry