[RESOLVIDO] Limpar dados de um modal após a validação - JSF 2.0

4 respostas
P

Bom dia, estou trabalhando em um projeto JSF 2.0 com Seam 3 e Weld e Primefaces 2.2

Bom, tenho uma tela de CRUD, para usuários. Estamos utilizando hibernate validator para validar os campos.
O atributo nome do usuário possuí validação e é obrigatório. Além o nome ele possuí outros atributos obrigatórios que sofrem validação. Por exemplo, se eu digitar “Fulano” no campo nome e nao digitar mais nada nos outros campos, tentar dar um submit no formulário do modal (p:dialog) ele valida e não deixa fechar o modal, até ai ok. Se eu clico em cancelar no modal (e não no X que fecha o modal) o modal é fechado e existe um método que é chamado e faz um new User() no meu objeto ligado ao modal.

Problema acontece agora, se eu tentar abrir novamente o modal, SEM SAIR DA TELA DE CRUD, ao abrir o modal está preenchido com o nome “Fulano”! Isso não deveria acontecer pois eu também faço um new User quando vou abrir o modal, além disso estou dando update no modal, em um painel interno do modal, diretamente no inputText de nome e também no painel externo ao modal!

E nada resolveu. Tentei limpar as mensagens do facescontext e não adiantou também.

Alguem tem idéia do que posso fazer para resolver isso?? Obrigado.

4 Respostas

M

Olá amigo,
Você já tentou mudar o browser? As vezes a culpa é do browser que armazena esta informação em algum lugar e acaba deixando você louco.

P

Olá, já tentei sim, tanto chrome quanto firefox apresentam o mesmo problema.

Estou tentando agora a solução do Rafael Ponte citada neste tópico.

http://www.guj.com.br/java/239891-jsf-2-problema-com-requiredtrue-no-hinputtext-/2

Se funcionar eu posto aqui.

R

Gambiarra pesada essa história de mudar de browser hein?Tem é que atentar pra gerenciar o estado dos componentes direitinho…

P

Não diria “gambiarra”, mas o sistema tem que funcionar em QUALQUER BROWSER (uma exceção apenas para a série IE).

E realmente, as vezes pode ser algo do browser que esteja te trolando.

Bem, meu problema foi resolvido conforme citado, pelo tópico linkado na minha penultima mensagem.

Criado 5 de janeiro de 2012
Ultima resposta 5 de jan. de 2012
Respostas 4
Participantes 3