Deletar referências 1:1 com annotations

Olá pessoal.
Estou implementando meus primeiros programas com o hibernate.
Estou usando annotations.

Consegui apagar minhas referências @OnteToMany com @OnDelete(action=OnDeleteAction.CASCADE), porém já tentei de diversas formas fazer o mesmo com @OneToOne, mas não consigo :sad:

Tem como fazer isso que estou tentando?

@Entity
public class Cliente {
	@Id	
	@SequenceGenerator(name = "CLIENTE_ID_SEQ", sequenceName = "CLIENTE_ID_SEQ")
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "CLIENTE_ID_SEQ")
	private int id;
	private String nome;
	private String fone;
	private String estadoCivil;
	@OneToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="documento_fk")
	@OnDelete(action=OnDeleteAction.CASCADE)
	private Documento documento;
        ....gets
        ....sets
@Entity
public class Documento {
	@Id	
	@SequenceGenerator(name = "DOCUMENTO_ID_SEQ", sequenceName = "DOCUMENTO_ID_SEQ")
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "DOCUMENTO_ID_SEQ")
	private int id;
	private String rg;
	private String cpf;
	private String tituloEleitor;
	@OneToOne(mappedBy="documento")
	private Cliente cliente;
        ....gets
        ....sets

Muito obrigado pela ajuda.
Abraço a todos. :grin:

Putz, consegui… :smiley:

posta a solução ae…

vlw

Pedro, tudo bem?
Solucionei meu problema. :grin:
Na verdade eu estava tão empolgado com o hibernate que nem preparei minha base direito, então o meu erro era de lógica de banco de dados e não tinha nada a ver com o hibernate. :lol:

Como um cliente vai ter um registro de documento(1:1) então quando eu apagar o cliente o registro do documento também terá de ser apagado.

Seguindo esse raciocínio a tabela de documento tem que ter uma chave estrangeira apontando para o registro do cliente (cliente_fk).
Obs.: eu estava fazendo o contrário. :oops:

Então o código fica assim:

CLASSE CLIENTE

@Entity
public class Cliente {
	@Id
	@SequenceGenerator(name = "CLIENTE_ID_SEQ", sequenceName = "CLIENTE_ID_SEQ")
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "CLIENTE_ID_SEQ")
	private int id;
	private String nome;
	private String fone;
	private String estadoCivil;
	@OneToOne(cascade = CascadeType.ALL, mappedBy = "cliente")
	private Documento documento;
//GET'S
//SET'S

CLASSE DOCUMENTO

@Entity
public class Documento {
	@Id	
	@SequenceGenerator(name = "DOCUMENTO_ID_SEQ", sequenceName = "DOCUMENTO_ID_SEQ")
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "DOCUMENTO_ID_SEQ")
	private int id;
	private String rg;
	private String cpf;
	private String tituloEleitor;
	@OneToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="cliente_fk")
	@OnDelete(action=OnDeleteAction.CASCADE)
	private Cliente cliente;
//GET'S
//SET'S

Estou gostando muito do hibernate.
Agora vou preparar umas classes DAO (que já estou tendo problemas devido a referência).
Mas vamos lá.

Um grande abraço.