Então To Precisando de algo assim, o cara digita o cep dele, e os campos tipo rua, bairro cidade, estado. Sejam Mostrados nos Input’s…
Tipo no Caso eu Tenho um Usuario que tem Relacionamento Com Endereco, e esse endereco tem relacionamento com logradouro que eh uma tabela onde tem Logradouro Inseridos já…
Montei 2 metodos pra me retornar um endereço com o logradouro já
public static Logradouro returnLogradouro(Logradouro logradouro){
Map<String, Object> parametros = new HashMap<String, Object>();
parametros.put("cep", logradouro.getCep());
logradouro = new DAOFactory().getLogradouroDAO().ObjetoPorCriterio("from Logradouro l where l.cep = :cep", parametros);
if(logradouro != null){
return logradouro;
}
else{
return null;
}
}
public static Endereco teste(Logradouro logradouro){
Endereco endereco = new Endereco();
if(returnLogradouro(logradouro) != null){
endereco.setLogradouro(returnLogradouro(logradouro));
System.out.println(endereco.getLogradouro().getNome_End());
}
else{
endereco = null;
}
return endereco;
}
Bom Até ai blz, mas agora eu preciso que esse endereço retornado seja preenchido na tela…
ai eu fiz
public void nameChanged(ValueChangeEvent event){
FacesUtil.messageInfo(event.getNewValue().toString());
Logradouro l = new Logradouro();
l.setCep(event.getNewValue().toString());
Endereco e = new TesteEndereco().teste(l);
nmEnd.setValue(e.getLogradouro().getNome_End());
cidEnd.setValue(e.getLogradouro().getCidade());
}
So que na hora q eu vou salvar se eu imprimir tipo usuario.getendereco().getLogradouro.getCidade();
ele imprime de boa, se imprime eh pq tem o endereço.
Mas qdo eu do um dao.salvar(usuario);
ele da erro e fala que o endereço nao pode ser nulo.
Alguem entende que doidera eh essa.???
Se alguem puder me ajudar Muiot Obrigado.