Jak i kiedy w JSF jest niszczone @ ViewScoped bean?

Cyklu życia @RequestScoped i @SessionScopedBean managed beans są zarządzane przez kontener Servleta, ponieważ są one zasadniczo przechowywane jako atrybut odpowiednio HttpRequest i HttpSession. Jak JSF zarządza cyklem życia @ViewScopedBean ? Wiem, że zostanie utworzony, gdy widok jest tworzony i jest użyteczny, dopóki nie ma postback do innego widoku. Ale okazało się, że nie są to śmieci zbierane od razu po tym, jak ruszymy z tego widoku.

Author: BalusC, 2013-03-07

1 answers

Zostanie zniszczony, gdy

  • Postback z wynikiem Nie{[0] } został wykonany,

  • Lub, liczba (logicznych) widoków w sesji została przekroczona, a konkretny widok jest pierwszym w łańcuchu LRU (w Mojarra, który można konfigurować za pomocą parametrów kontekstowych com.sun.faces.numberOfViewsInSession i com.sun.faces.numberOfLogicalViews, każdy z domyślną wartością 15),

  • Lub, Liczba zakresów widoku actieve w sesji została przekroczona( w Mojarra, jest to hardcoded limit 25), Zobacz także JSF 2.2 zużycie pamięci: dlaczego Mojarra przechowuje w pamięci 25 ostatnich widoków?

  • Lub sesja wygasła.

W ten sposób Nie zostanie zniszczona, gdy strona zostanie rozładowana w wyniku kliknięcia łącza pobierz do innej strony, odświeżenia strony lub zamknięcia karty/okna przeglądarki. Fasola będzie żyła tak długo, dopóki nie zostanie spełniony jeden z powyższych warunków. Aby zniszczyć go podczas rozładunku, rozważ użycie OmniFaces @ViewScoped zamiast tego.

 26
Author: BalusC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:07:19