Estou tentando introduzir uma restrição de várias chaves em uma entidade mapeada por JPA:
public class InventoryItem {
@Id
private Long id;
@Version
private Long version;
@ManyToOne
@JoinColumn("productId")
private Product product;
@Column(nullable=false);
private long serial;
}
Basicamente, o par (produto, serial) deve ser único, mas só encontrei uma maneira de dizer que o serial deve ser único. Obviamente, isso não é uma boa ideia, pois produtos diferentes podem ter os mesmos números de série.
Existe uma maneira de gerar essa restrição via JPA ou sou forçado a criá-la manualmente para o banco de dados?