Hey Pierre,
You can use a special web filter for better handling of caching.
Here is an example similar to what I use on my projects,
Add the following to your web.xml
<filter>
<filter-name>gwtCacheControlFilter</filter-name>
<filter-class>com.acme.server.GWTCacheControlFilter</filter-class>
<init-param>
<param-name>Cache-Control</param-name>
<param-value>max-age=31536000, public</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>gwtCacheControlFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
And the doFilter method of your filter class would be something like
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException,
ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
String requestURI = httpRequest.getRequestURI();
if (requestURI.contains(".nocache.")) {
Date now = new Date();
HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse.setDateHeader("Date", now.getTime());
// one day old
httpResponse.setDateHeader("Expires", now.getTime() - 86400000L);
httpResponse.setHeader("Pragma", "no-cache");
httpResponse.setHeader("Cache-control", "no-cache, no-store,
must-revalidate");
} else if (requestURI.contains(".cache.")) {
HttpServletResponse httpResponse = (HttpServletResponse) response;
// one day old
httpResponse.setHeader("Cache-Control", "public, max-age=31536000");
httpResponse.setDateHeader("Expires", DateUtil.addDays(new
Date(), 365).getTime());
}
filterChain.doFilter(request, response);
}
-Selcuk
On Mon, Jan 11, 2021 at 1:35 PM [email protected] <[email protected]>
wrote:
> Hi,
> I have a gwt app developed with gwt-material but I assume it's not
> relevant for this problem.
> The app is served by Tomcat.
> Everything is fine with PC/iphone/iPad but with android after deploying a
> new app, the old one is still showned. The nocache mecanism doesnot work in
> android chrome.
> Removing the cache works, but I cannot asks that to my users.
>
> Any hint how can I force the browser to reload the app from server for
> theses mobiles ?
> Thanks in advance
> Pierre
>
> --
> You received this message because you are subscribed to the Google Groups
> "GWT Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit/cf24a086-3c9e-4488-9ab8-200402a38b4bn%40googlegroups.com
> <https://groups.google.com/d/msgid/google-web-toolkit/cf24a086-3c9e-4488-9ab8-200402a38b4bn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
--
You received this message because you are subscribed to the Google Groups "GWT
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/google-web-toolkit/CA%2Bw5W1sS-NhKOH66g79zw0GkRwDCMWDBDxGTu-O2pcSKqa5iPw%40mail.gmail.com.