Pessoal,
Estou tentando persistir a minha classe Contact e nela eu tenho um endereço que deveria ser salvo por cascade:
@Entity
@org.hibernate.annotations.Entity
@Table(name = "TB_CONTACT")
@SuppressWarnings({ "PMD.OverrideBothEqualsAndHashcode", "PMD.LongVariable", "PMD.ShortVariable" })
public class Contact extends AbstractEntity {
private static final long serialVersionUID = 1L;
@Id
@SequenceGenerator(name = "contactSequence", sequenceName = "TB_CONTACT_CD_CONTACT_SEQ", initialValue = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "contactSequence")
@Column(name = "CD_CONTACT")
private Integer id;
@OneToOne
@PrimaryKeyJoinColumn
private Address address;
}
e
@Entity
@org.hibernate.annotations.Entity
@Table(name = "TB_ADDRESS")
@SuppressWarnings({ "PMD.OverrideBothEqualsAndHashcode", "PMD.LongVariable", "PMD.ShortVariable" })
public class Address extends AbstractEntity {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "CD_CONTACT")
private Integer id;
}
Desse jeito que está mapeado, ele não salva a entidade Address, mas não dá erro.
Se eu coloco o cascade, ele sá o seguinte erro: ids for this class must be manually assigned before calling save(): br.atech.sigma.gcb.domain.Address
Agradeço desde já.
Naime