Estou fazendo um projeto usando java5 e com jpa. Tenho as classes e os relacionamentos:
Nota: um cliente pode ter vários endereços.
Classe cliente
@Entity
public class Cliente {
@Id
@SequenceGenerator(name = "id", sequenceName = "SQ_CLIENTE")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "id")
private int id;
private String nome;
private String sobrenome;
private String telefoneDDD;
private String telefone;
private String celularDDD;
private String celular;
private String comercialDDD;
private String comercial;
private String rg;
private String cpf;
private String cpt;
private String cptSerie;
@OneToMany
private ArrayList<Endereco> endereco;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
Classe endereço:
@Entity
public class Endereco {
@Id
@SequenceGenerator(name = "id", sequenceName = "SQ_ENDERECO")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "id")
private int id;
@ManyToOne(cascade=CascadeType.PERSIST)
@JoinColumn(name="ID_CLIENTE")
private Cliente cliente;
private String endereco;
private int numero;
private String complemento;
private String bairro;
private String cidade;
private String estado;
private String pais;
private String cep;
public int getId() {
return id;
}
Tabela no bd:
CREATE TABLE ENDERECO
(
ID DECIMAL(7),
ID_CLIENTE DECIMAL(7),
ENDERECO VARCHAR(100),
NUMERO INT,
COMPLEMENTO VARCHAR(20),
BAIRRO VARCHAR(30),
CIDADE VARCHAR(50),
ESTADO CHAR(2),
PAIS VARCHAR(100),
CEP CHAR(9),
CONSTRAINT PK_ENDERECO PRIMARY KEY(ID),
CONSTRAINT FK_ENDERECO FOREIGN KEY(ID_CLIENTE) REFERENCES CLIENTE(ID)
)
O problema é que eu tenho que montar uma tela onde são cadastrados os clientes e outra separada para os endereços. Quando vou cadastrar o cliente ocorre um erro, pois eu não tenho o objeto endereço. Como eu resolvo isso com o relacionamento em duas telas separadas? Sendo que eu não posso ter uma pop-up na mesma tela.
