Galera eu acho que é burrice minha, mas vou perguntar… seguinte, tenho um controller e tenho um método pra abrir uma entidade pra edição e um pra fazer a edição.
@Get @Path("/categorias/{id}/")
public Categoria editar(Long id) {
result.include("categorias", repositorio.listar()); // lista de categorias pra preencher uma select
return repositorio.carregar(id);
}
@Put @Path("/categorias/{categoria.id}/")
@Permissao({TipoPerfil.ADMIN, TipoPerfil.GERENTE})
public void alterar(Categoria categoria) {
Categoria categoriaBD = repositorio.carregar(categoria.getId());
validator.validate(categoria); //aqui vai dá erro
validator.onErrorUsePageOf(this).editar(categoria.getId()); //eu devo usar outra coisa aqui?
BeanUtils.copyProperties(categoria, categoriaBD);
result.include("message", "Categoria foi alterada com sucesso");
result.redirectTo(this).listar();
}
quando eu abro a entidade pra editar, a combo vai ser preenchida com os dados de “categorias”, porém quando eu submeto e acontece um erro de validação daí a combo fica vazia. Se eu usar onErrorForwardTo eu perco os dados que o usuário digitou… o que eu devo fazer? Carregar de novo a lista não né? Ai é p@#$@#
agradeço a quem puder me ajudar. valeu.
Eu fiz o seguinte: se der erro de validação eu carrego as entidades que preenchem os combo…