Olá pessoal, tudo bem?
Bem, comecei um novo projeto utilizando o Spring MVC e logo pintou uma duvida básica na qual eu não estou conseguindo achar na internet, talvez pelo motivo que eu esteja implementando errado ou fazendo a pergunta errada.
Tenho um formulário no qual os dados que serão persistidos são em duas tabelas distintas.
Qual a melhor forma de se fazer isso?
Na minha view tenho a anotação “bind” do Spring, pois em buscas pela internet me deparei com essa forma de se realizar a ligação entre o controller e a view.
[code]
<spring:bind path=“tenant.firstName”/>
//Restante dos campos do meu formulario
</form>[/code]
Já no meu controller tenho o metodo abaixo que tem como objetivo jogar os atributos na view
[code]// Entra no DashBoard do Tenant(Agência)
@RequestMapping(value = “/”, method = RequestMethod.GET)
public String home(@ModelAttribute(“tenant”) Agency tenant, @ModelAttribute(“login”) Login login, ModelMap map) {
Agency agency = dashboardFacade.getAgency();
map.addAttribute("agency", agency);
//Acionar o Logger.info de acesso o site.
if (tenantResolver.isMasterTenant()) {
// adiciona informacao sobre a agência e o Login.
map.addAttribute("tenant", tenant);
map.addAttribute("login", login);
return "landing/index";
} else {
return "dashboard/home";
}
}[/code]
E finalmente o submit que dispara o metodo abaixo para salvar uma agencia e o login.
// Adiciona uma nova agência
@RequestMapping(value = "/addAgency", method = RequestMethod.POST)
public String addAgency(@ModelAttribute("tenant") Agency agency, @ModelAttribute("login") Login login, Model model, final RedirectAttributes redirectAttributes) {
agency = dashboardFacade.addAgency(agency);
login = dashboardFacade.addLogin(login);
return "redirect:" + getAgencyFullUrl(agency);
}
O problema é que os dados para persistência estão vindo “NULL”.
Tenho o relacionamento um para muitos entre a tabela agency e login.
Alguém pode me da uma força estou bem confuso em realizar tal gravação e mapeamento entre tais relacionamentos.
Obrigado