Dúvidas sobre a tag <form:select/>

13/03/2018

0

Bom dia Senhores,

Estou tentando passar o id do departamento selecionado para a tabela empregado, só que infelizmente quando seleciono, não está passando o id do departamento selecionado.

Segue abaixo parte o html, a tag <form:select> encontra-se dentro da tag <form:form>
<form:select path="departamento" cssClass="form-control">
<form:option value="0" label="---Selecione o Departamento---" />
<form:options items="$" itemLabel="nome" itemValue="id" />
</form:select>

Segue parte do controller de empregado:
...
@RequestMapping(value="/add", method=RequestMethod.GET)
public ModelAndView addEmpregado(@ModelAttribute("empregado") Empregado empregado,
ModelMap model) {
model.addAttribute("departamentos", depDAO.getListAllDepartamentoDAO());
return new ModelAndView("empregado/add", model);
}

@RequestMapping(value="/save", method = RequestMethod.POST)
public ModelAndView saveEmpregado(@ModelAttribute("empregado") Empregado umEmpregado,
BindingResult result,
RedirectAttributes attr) {
ModelAndView model;

if(result.hasErrors()) {
model = new ModelAndView("/empregado/add");
}
System.out.println("Empregado" + umEmpregado);
empDAO.saveEmpregadoDAO(umEmpregado);
attr.addFlashAttribute("message","Registro inserido com sucesso");
model = new ModelAndView("redirect:/empregado/add");

return model;
}
...

E parte da classe Empregado

...
@Entity
@Table(name = "Empregado")
public class Empregado {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@Column(name = "matricula", nullable = false, length = 20)
private String matricula;

@Column(name = "CPF", nullable = false, length = 20)
private String CPF;

@Column(name = "nome" , nullable = false, length = 100)
private String nome;

@Column(name = "endereco", nullable = false, length = 100)
private String endereco;

@ManyToOne
private Departamento departamento;

...

OS gets e sets foram omitidos

Gostaria que alguém me orientasse em como passar o ID do departamento, para ser uma referência dentro da tabela Empregado, cujo o nome é, departamento_id.

Obrigado,
Rafael
Rafael Gonçalves

Rafael Gonçalves

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar