Amigos,
Estou começando a estudar o VRaptor e estou diante de um problema que parece ser bobo, mas que está me impedindo de seguir adiante.
Quando eu vou editar meu objeto, na tela editar carrega normalmente o objeto que selecione. Mas quando faço a alteração(submeto o form da tela editar), o objeto é alterado e os campos ficam em BRANCO.
Lembrando que estou usando facades…
Meu Controller está assim:
public Aluno editar(int id){
return getFacade().findaluno(id);
}
public void alterar(Aluno aluno){
getFacade().updatealuno(aluno);
result.redirectTo(this).listar();
}
Meu form
<form action="alterar">
<fieldset>
<legend>Editar Aluno</legend>
<input type="hidden" name="aluno.id" value="${aluno.id}"/>
<label for="nome">Nome:</label>
<input type="text" value="${aluno.nome}"/>
<label for="faixa">Faixa:</label>
<input type="text" value="${aluno.faixa}"/>
<button type="submit">Confirmar</button>
</fieldset>
</form>
Meu facade
public Aluno findaluno(int alunoId) {
alunoDAO.beginTransaction();
Aluno aluno = alunoDAO.find(alunoId);
alunoDAO.closeTransaction();
return aluno;
}
public void updatealuno(Aluno aluno) {
alunoDAO.beginTransaction();
Aluno persistedaluno = alunoDAO.find(aluno.getId());
persistedaluno.setNome(aluno.getNome());
persistedaluno.setFaixa(aluno.getFaixa());
alunoDAO.commitAndCloseTransaction();
}