Obsługiwana funkcja JSF 2.x sekwencyjnego przetwarzania wielu zdarzeń ajaxowych nie działa dla mnie. Mam następujący scenariusz:Kolejka zdarzeń JSF ajax nie działa w przypadku zdarzenia akcji po zmianie zdarzenia
h: inputText (zmiana)
<h:inputText id="consumption_input" value="#{cc.attrs.consumptionInfo.consumption}"> <f:ajax render="#{cc.attrs.outerRenderString}" event="change" listener="#{cc.handleAjaxRequest}" /> </h:inputText>
h: CommandButton (DZIAŁANIE)
<h:commandButton id="startComparisonButton" action="#{rateComparisonBean.startRateComparison()}" value="#{bundle.rateResultOverview_startComparison}"> <!-- This is to avoid mixed requests, ajax and full requests --> <f:ajax render="@form"/> </h:commandButton>
Wydarzenia z obu pierwiastków są obsługiwane poprawnie, jeśli zostanie uruchomione we własnym zakresie.
Problem występuje, gdy oba zdarzenia są wywoływane w ciągu jednego kliknięcia (Wprowadź wartość w polu tekstowym, a następnie kliknij przycisk). Spodziewałem się, że doprowadzi to do synchronizacji dwóch żądań ajaxowych (CHANGE-TextField i ACTION-commandButton).
Niestety, istnieje tylko jedno żądanie Ajax (Change-TextField), drugie wydarzenie wydaje się być całkowicie utracone.
już zapewnione, że wszystkie warunki wstępne dla H: CommandButton pełne są wypełnione, jak wskazano tutaj: commandButton/commandLink/ajax action/listener method not invoked or input value not updated
Byłbym wdzięczny dostać żadnych wskazówek, jak rozwiązać ten problem.
Środowisko: GlassFish 3, Mojarra 2.1.3-FCS
Interesujące ... Czy zweryfikowałeś to w małej, łatwo replikowanej aplikacji? Czy można zamienić Mojarrę na MyFaces i sprawdzić, czy zachowujesz się tak samo? –
Czy kiedykolwiek miałeś * oczekiwane * zachowanie przy zwolnieniu dwóch (aktywnych) słuchaczy? – skuntsel
Czy znalazłeś rozwiązanie? Stoję w obliczu tego samego problemu. –