Поместите компонент в область запроса или представления (и, таким образом, , а не в области сеанса).Таким образом, bean-компонент будет обрабатываться и создаваться заново при запросе нового представления.
Кроме того, вам также следует указать веб-браузеру не кэшировать страницу.Некоторые веб-браузеры (например, Firefox) также будут отображать старые входные значения при запросе страницы из кэша браузера.Создайте фильтр , который аннотируется как @WebFilter(servletNames={"facesServlet"})
(где facesServlet
- это <servlet-name>
FacesServlet
, как определено в web.xml
) и содержит в основном следующее в методе doFilter()
:
HttpServletResponse hsr = (HttpServletResponse) response;
hsr.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
hsr.setHeader("Pragma", "no-cache"); // HTTP 1.0.
hsr.setDateHeader("Expires", 0); // Proxies.
chain.doFilter(request, response);