response.setHeader("Cache-Control", "no-cache, must-revalidate, proxy-revalidate, no-store"); response.setHeader("Pragma", "no-cache"); response.setHeader("Expires", "0"); response.setDateHeader("Expires", 0L);
但是在firebug里面看http response,大部分.do的response都没有cache,但是有个别.do的response cache依旧存在。。。
真见鬼了。。。
后仔细比对struts-config,发现那两个特殊的.do,都是在tiles里面forward到了其他.do:
上例中"/Index.do"和"/user/info.do"都是继承的相同的根JSP,但是访问"/Index.do"页面会被缓存,直接访问"/user/info.do"则不会!
后将"/Index.do"中的tiles移除,直接forward到"/user/info.do",后问题解决(如下代码)! (我擦,一般人还真想不到!!)