apresenta este erro na anotação @EmbeddedId em algumas classes de entidades. sei que se removo as anotações de mapping da Pk dessas classes sano o problema mas nao entendi o porque. Alguem poderia me explicar onde estou errado por gentileza?
por exemplo, essa é entidade ocorrencia/**
* The persistent class for the occurrence database table.
*
*/
@Entity
@Table(name = OccurrenceConstant.OCCURRENCE)
public class Occurrence extends OccurrenceConstant implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
OccurrencePK id;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = OCCURRENCE_DATE_SCAN)
private Date occurrenceDateScan;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = OCCURRENCE_DATE_CREATION)
private Date occurrenceDateCreation;
@Temporal(TemporalType.DATE)
@Column(name = OCCURRENCE_DATE_TRT)
private Date occurrenceDateTrt;
// bi-directional many-to-one association to Image
@OneToMany(mappedBy = OCCURRENCE, fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Set<Image> images;
@Lob()
@Column(name = OCCURRENCE_NOTE)
private String occurrenceNote;
@Column(name = OCCURRENCE_STATE, nullable = false)
private Short occurrenceState;
@Column(name = OCCURRENCE_TYPE)
private Long occurrenceType;
@Column(name = OCCURRENCE_VALUE_ENVELOPE)
private String occurrenceValueEnvelope;
@Column(name = OCCURRENCE_TERMINAL_NUMBER)
private Integer occurrenceTerminalNumber;
// bi-directional many-to-one association to Account
@ManyToOne
@JoinColumn(name = OCCURRENCE_ACCOUNT_ID, nullable = true)
private Account account;
// bi-directional many-to-one association to Site
@ManyToOne
@JoinColumn(name = OCCURRENCE_AGENCY_SOURCE, nullable = true)
private Agency occurrenceAgencySource;
@OneToOne(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
@JoinColumns({
@JoinColumn(name = OCCURRENCE_ID, referencedColumnName = OccurrenceTmpConstant.OCCURRENCE_TMP_ID, insertable = false, updatable = false, nullable=true),
@JoinColumn(name = OCCURRENCE_SITE, referencedColumnName = OccurrenceTmpConstant.OCCURRENCE_TMP_SITE, insertable = false, updatable = false, nullable=true)
})
private OccurrenceTmp occurrenceTmp;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = OCCURRENCE_LOCK_CREATION)
private Date occurrenceLockCreation;
@Column(name = OCCURRENCE_AMOUNT)
private Integer occurrenceAmount;
public Occurrence() {
}
e esta a sua PK
/**
* The primary key class for the image database table.
*
*/
@Embeddable
public class OccurrencePK extends OccurrenceConstant implements Serializable {
// default serial version id, required for serializable classes.
private static final long serialVersionUID = 1L;
@Column(name = OCCURRENCE_ID, unique = true, nullable = false)
private Integer occurrenceId;
// bi-directional many-to-one association to Occurrence
@ManyToOne
@JoinColumn(name = OCCURRENCE_SITE, unique = true, nullable = false)
private Site occurrenceSite;
public OccurrencePK() {
}
public OccurrencePK(int occId, Site site) {
this.occurrenceId = occId;
this.occurrenceSite = site;
}
public int getOccurrenceId() {
return occurrenceId;
}
public void setOccurrenceId(Integer occurrenceId) {
this.occurrenceId = occurrenceId;
}
public Site getOccurrenceSite() {
return occurrenceSite;
}
public void setOccurrenceSite(Site occurrenceSite) {
this.occurrenceSite = occurrenceSite;
}
public OccurrencePK(Integer imageId, Site imageSite) {
if (imageId != null)
setOccurrenceId(imageId);
if (imageSite != null)
setOccurrenceSite(imageSite);
}