insertable = false
" nas colunas de chave primária da Classe PostDataQualification, pois
os valores de chave primária devem ser informados no momento do insert. Pode fazer um teste retirando essa propriedade?--
-- Você está inscrito na lista de discussão técnica do CEJUG. Para sair da lista de discussão, envie um email para cejug+un...@googlegroups.com.
---
Você recebeu essa mensagem porque está inscrito no grupo "CEJUG" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para cejug+un...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para ce...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/cejug.
Para mais opções, acesse https://groups.google.com/d/optout.
@Id
e @Column
, ou seja não estão anotadas como estrangeiras:
@Id
@Column(name = "idLearningProcess", insertable = false, updatable = false)
private Integer idLearningProcess;
@Id
@Column(name = "idPostData", insertable = false, updatable = false)
private Integer idPostData;
Para usar tal recurso, você não deveria usar o @Id em conjunto com a @ManyToOne, referenciando as chaves estrangeiras?
@ManyToOne(optional = false, fetch = FetchType.EAGER)
@JoinColumns({ @JoinColumn(name = "idLearningProcess", referencedColumnName = "id",
insertable = false, updatable = false
) }) private LearningProcess learningProcess;
@Id
@ManyToOne(optional = false, fetch = FetchType.EAGER)
@JoinColumn(name = "idPostData", referencedColumnName = "id", insertable = false, updatable = false, nullable = false, unique = false)
private PostData post;
@Column(name = "idLearningProcess", insertable = false, updatable = false)
private Integer idLearningProcess;
@Column(name = "idPostData", insertable = false, updatable = false)
private Integer idPostData;
@Id
@ManyToOne(optional = false, fetch = FetchType.EAGER)
@JoinColumns(@JoinColumn(name = "idLearningProcess", referencedColumnName = "id", insertable = true, updatable = false, nullable = false, unique = false))
private LearningProcess learningProcess;
@Id
@ManyToOne(optional = false, fetch = FetchType.EAGER)
@JoinColumn(name = "idPostData", referencedColumnName = "id", insertable = true, updatable = false, nullable = false, unique = false)
private PostData post;
@Column(name = "pontuation", insertable = false, updatable = false, nullable = true, unique = false)
private Integer pontuation;
@Temporal(TemporalType.TIMESTAMP)
@Column(nullable = false, insertable = true, unique = false)
private Date date;
@ManyToOne(optional = false, fetch = FetchType.EAGER)
@JoinColumn(name = "idClassification", referencedColumnName = "id", nullable = false, insertable = true, updatable = true, unique = false)
private Classification classification;
@ManyToOne(optional = false, fetch = FetchType.EAGER)
@JoinColumn(name = "idContext", referencedColumnName = "id", nullable = false, insertable = true, updatable = true, unique = false)
private Context context;
@ManyToOne(optional = true, fetch = FetchType.EAGER)
@JoinColumn(name = "idEvent", referencedColumnName = "id", nullable = true, insertable = false, updatable = false, unique = false)
private Event event;