Boa tarde.
Estou estudando um poco de Ajax e queria fazer algo básico usando o VRaptor 3.5 e estou me perdendo em alguns conceitos.
Tenho um formulário de apenas 2 campos e queria fazer um “update” usando Ajax.
Vou colocar oque tenho que está funcionando e queria que me ajudassem a mudar de modo que funcionasse usando o Ajax, atualizando o conteúdo da página sem refresh ou com refresh (oque for mais fácil). Acredito que terei que usar Javascript também devido ao Ajax, e é nisso que estou me perdendo, bem como oque modificar no Controller.
Meu Controller :
@Path("/usuario/update")
@Acesso({TipoPerfil.ADMINISTRADOR, TipoPerfil.SOCIAL})
public void update(Usuario usuario) {
this.daoFactory.getUsuarioDao().atualiza(usuario);
result.redirectTo(UsuarioController.class).profile();
}
Meu Dao
public void atualiza(T u) {
Transaction tx = session.beginTransaction();
try {
session.update(u);
tx.commit();
} catch (HibernateException e) {
tx.rollback();
throw new Exception();
}
session.close();
}
Aqui um formulário simples, onde é apresentado um “sumário” com dados do usuário e uma opção para editar.
Clicando em editar, o formulário de edição é apresentado.
<div class="body">
<div class="view" >
${usuario.sumario}
</div>
<div class="edicao">
<form name="formEditSumario" id="formEditSumario" action="<c:url value="/usuario/update"/>" method="post">
<input type="hidden" name="usuario.cod" id="usuarioCod" value="${usuario.cod}">
<input type="text" name="usuario.sumario" id="usuarioSumario" value="${usuario.sumario}">
<div class="buttons">
<button class="btn btn-primary btn-sm" id="submitform">Save</button>
<button data-ma-action="profile-edit-cancel" class="btn btn-link btn-sm">Cancel</button>
</div>
</form>
</div> </div>