0
我寫了2個GWT模塊並編譯它。我想找到***。nocache.js文件到一個html文件中。如何將2 gwt module_x.module_x.nocache.js嵌入到html文件中?
我寫了2個GWT模塊並編譯它。我想找到***。nocache.js文件到一個html文件中。如何將2 gwt module_x.module_x.nocache.js嵌入到html文件中?
你需要在你的HTML文件中.nocache.js文件作爲腳本:
<script language="javascript" src="com.acme.gwt.Module.nocache.js"></script>
<script language="javascript" src="com.acme.gwt.Module2.nocache.js"></script>
你還需要配置你的Web服務器中添加頭請求.nocache。文件以防止客戶端瀏覽器進行緩存。如果這些文件被緩存,客戶端將不會輕鬆看到應用程序的新版本。 Web服務器移植的方式做到這一點是使用Servlet過濾器:
public class CacheHeaderFilter implements Filter {
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain filterChain) throws IOException, ServletException {
String uri = ((HttpServletRequest)req).getRequestURI();
if (uri.contains(".cache.")) {
((HttpServletResponse)res).setDateHeader("Expires",
System.currentTimeMillis() + 31536000000L);
} else if (uri.contains(".nocache.")) {
((HttpServletResponse)res).setHeader("Cache-Control", "no-cache");
}
filterChain.doFilter(req, res);
}
...
}
參考這在web.xml中:
<filter>
<filter-name>cacheHeaderFilter</filter-name>
<filter-class>com.acme.gwt.server.CacheHeaderFilter</filter-class>
</filter>
注意,這兩個GWT模塊不互相地干擾。通常情況下,gwt模塊假定它是頁面上唯一的gwt模塊,所以類似歷史iframe的東西可能會消失。 – Chii 2009-09-09 10:53:51