JSF 2 - Atributos do componente de compensação na página Carregar?
-
20-09-2019 - |
Pergunta
A verdadeira pergunta: Existe uma maneira de limpar certos atributos para todos os componentes em uma página inicial de carga?
Informações de fundo:
No meu aplicativo, tenho uma camada de front -end JSF 2.0 que fala com uma camada de serviço (a camada de serviço é composta de feijões de mola que são injetados no feijão gerenciado).
A camada de serviço faz sua própria validação e faço a mesma validação na camada de front -end usando minhas próprias classes de validador para tentar evitar a duplicação de código de alguma forma. Essas classes de validador não são validadores JSF, são apenas pojos.
Estou apenas fazendo validação em uma ação; portanto, no método de ação, executo validação e somente se for válido, chamo até a camada de serviço.
Quando faço minha validação, defino o styleclass e o título nos uicomponentes usando reflexão (portanto, se o uicomponent tiver os métodos setStyLeclass (: string) ou seditar (: string), eu os uso).
Isso funciona bem, e em um erro de validação, vejo uma caixa de texto com um estilo com um pop -up contendo a mensagem de erro se eu passar o mouse sobre ela. No entanto, como o componente está vinculado a um feijão gerenciado com escopo escopo, parece que esses atributos ficam. Portanto, se eu navegar e voltar para a mesma página, o StyleClass e o título ainda estarão no estado de erro.
Existe uma maneira de limpar os atributos do StyleClass e do título em cada página inicial do carregamento?
Obrigado,
James
PS Estou usando o método de ação para validar por causa de alguns problemas que tive antes com o JSF 1.2 e seus métodos de validação, mas não consigo lembrar por que ... então é por isso que estou usando o método de ação para validar.
Solução
Ok, então devo usar um phaselistener, veja Esta entrada do blog de Balusc e Esta outra entrada do blog, essa é uma maneira muito melhor de fazer o que já estou fazendo - definindo o estilécimo usando manualmente a reflexão - que recebe todos os componentes com mensagens e os destaca ... eu vou fazer o mesmo, mas acho que é possível adicionar um atributo Em vez disso, ainda não tentei.