Запросить объем поддержки бобов ... не в запросе - PullRequest
1 голос
/ 30 сентября 2010

У меня есть компонент поддержки (скажем, MyPageBean) с областью запроса, но, похоже, он находится в сеансе, потому что при навигации по моему приложению при посещении страницы myPage я всегда получаю один и тот же экземпляр. Я использую JSF 1.2, IceFaces 1.8.2 и JBoss 5.1.0

Ответы [ 2 ]

0 голосов
/ 01 октября 2010

В ICEFaces область запроса распространяется на частичные отправки. Поэтому, если ваше приложение никогда не обновляет всю страницу и использует только частичные отправки, вы можете столкнуться с этим.
Если вы не используете частичную отправку в навигации, это решит вашу проблему.

0 голосов
/ 30 сентября 2010

Разве это не только ваш веб-браузер или прокси-сервер, который активно кэширует веб-страницы?

Создайте Filter, который выполняет следующие действия в методе doFilter(), чтобы указать клиенту не кэшировать HTTP-ответ:

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);

и отобразите его в web.xml как показано ниже:

<filter>
    <filter-name>cacheFilter</filter-name>
    <filter-class>com.example.CacheFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>cacheFilter</filter-name>
    <servlet-name>facesServlet</servlet-name>
</filter-mapping>

при условии, что вы сопоставили экземпляр FacesServlet с <servlet-name> из facesServlet.

...