Zrozum zakres Flash Scope w JSF2

Z tego, co rozumiem, obiekty umieszczone w zasięgu Flash w cyklu życia żądania twarzy będą dostępne dla następnego cyklu życia żądania, a następnie wyczyszczone.

Załóżmy, że mam dwie strony:

page01.xhtml:

<h:form>
    <h:commandButton  action="#{page01Bean.action}" />
</h:form>

Page01Bean:

@ManagedBean
@RequestScoped
public class Page01Bean {

        public void action(){
            FacesContext.getCurrentInstance().getExternalContext().getFlash().put("fooKey", "fooValue");
        }

}

page02.xhtml:

<h:outputText value="#{flash.fooKey}"/> 

Więc kiedy przycisk jest włączonypage01.xhtml zostanie kliknięty, rozpocznie się cykl życia żądający twarzy (powiedzmy cykl życia A) i ustaw wartość flash pod klawiszem o nazwiefooKey

Następnie otwieram inną kartę przeglądarki i przeglądampage02.xhtml . Kolejne twarze żądają cyklu życia (powiedzmy cykl życia B) zaczyna renderować tę stronę. Spodziewałem się, że cykl życia B może uzyskać dostęp do zasięgu flash poprzedniego cyklu życia (tj. Cyklu życia A) i wyświetlaniafooValuewpage02.xhtml. Jednak nic nie wyświetla.

Proszę, popraw mnie, co źle zrozumiałem na temat zasięgu flash w tej exapaple. Dzięki wielkie

questionAnswers(2)

yourAnswerToTheQuestion