1.JNLP时实时更新问题
根据我的测试及网上看到的文章了解到,客户端java缓存JNLP是根据URL及response反回的Last-Modified(即最后一次修改时间)来缓存的(具体位置在C:\\Documents and Settings\\Administrator\\Local Settings\\Application Data\\Sun\\Java\\Deployment\\cache\\6.0中的某个文件夹下)。我用的是servlet生成JNLP文件的所以可以在servlet中增加如下代码:
resp.setHeader("Pragma", "no-cache");
resp.setHeader("Cache-Control", "no-cache");
resp.setHeader("Expires", "0");
resp.setContentType("application/x-java-jnlp-file");
((HttpServletResponse)resp).setDateHeader("Last-Modified", System.currentTimeMillis()); //这条语句是JNLP更新的核心
你可以做这样一个测试,将缓存的JNLP文件更改一下,你的applet将无法启动。