Po błędzie sprawdzania poprawności kolejne żądania ajax pobierają wartości ze składników interfejsu użytkownika, a nie z komponentów bean

W mojej aplikacji opartej na JSF 2 mam formularz, który zawiera (wśród innych komponentów interfejsu użytkownika) niektóre pola wyboru.

Na polach wyboru mam zarejestrowane żądania ajax, które są uruchamiane po ich sprawdzeniu. Żądania ajax po prostu zaktualizują wartość innego pola wyboru w fasoli bazowej. W wyniku tego zaznaczone zostanie również drugie pole wyboru (gdy zostanie ponownie renderowane - ponieważ w fazie odpowiedzi renderowania zaktualizowana wartość zostanie pobrana z komponentu bean bazy danych).

Działa to dobrze, dopóki cały formularz nie zostanie przesłany i nie wystąpią błędy walidacji. Następnie żądania ajax nadal działają i zmieniają wartość na fasoli kopii zapasowej, ale w fazie ponownego renderowania zaktualizowanego pola wyboru wartość nie jest pobierana z komponentu bean, ale z wartości buforowanej pobranej zComponentStateHelper klasa.

O ile mi wiadomo, jest to używane dla nowej funkcji JSF 2, która przechowuje tylko częściowe zmiany w drzewie komponentów.

Czego nie rozumiem to: jak to się ma do fazy walidacji? Dlaczego wStateHelperklasa dla mojego pola wyboru, gdy sprawdzanie poprawności wykryło błędy?

questionAnswers(1)

yourAnswerToTheQuestion