Após o erro de validação, os pedidos ajax subsequentes obtêm valores dos Componentes de UI e não dos Beans

Na minha aplicação baseada em JSF 2 eu tenho um formulário que inclui (entre outros componentes de interface do usuário) algumas caixas de seleção.

Nas caixas de seleção, registrei solicitações ajax que são acionadas quando são verificadas. As solicitações ajax na verdade apenas atualizam o valor de outra caixa de seleção no bean de apoio. Como resultado, a outra caixa de seleção também será marcada (quando ela for renderizada novamente, pois usará o valor atualizado do bean de apoio na fase de resposta da renderização).

Isso funciona bem até que todo o formulário seja enviado e erros de validação ocorram. Em seguida, as solicitações do ajax ainda funcionam e alteram o valor no bean de apoio, mas na fase de renderização novamente da caixa de seleção atualizada, o valor para ele não é obtido do bean de apoio, mas de um valor armazenado em cache que é retirado de umComponentStateHelper classe.

Tanto quanto eu entendo isso é usado para o novo recurso do JSF 2 para armazenar apenas alterações parciais na árvore de componentes.

O que eu não entendo é: como isso está relacionado à fase de validação? Por que há um valor em cache noStateHelperclass for my checkbox quando a validação encontrou erros?

questionAnswers(1)

yourAnswerToTheQuestion