O problema é que o hibernate está tentando salvar o objeto de relacionamento,
CellAtLocation
instância, enquanto os objetos filhos, Cell
e/ou Location
instâncias ainda não são persistidas. Assim, os objetos filhos não têm generated id
s associados a eles e, portanto, o hibernate não pode calcular o hash para eles. Antes de tentar salvar
CellAtLocation
instância, tente salvar os objetos filhos primeiro chamando saveOrUpdate
método neles.