加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java applet永远缓存,而不是下载新版本?

发布时间:2020-12-14 05:48:14 所属栏目:Java 来源:网络整理
导读:我们有一个案例,客户似乎永远缓存applet的版本.我们正在使用 param name =“cache_version”在我们的 object中正确标记标签,或者我们认为.我们从7.1.0.40的版本字符串转到7.1.0.42,这只触发了大约一半客户的下载. 客户端运行的JRE版本似乎并不重要.我们已经
我们有一个案例,客户似乎永远缓存applet的版本.我们正在使用< param name =“cache_version”>在我们的< object>中正确标记标签,或者我们认为.我们从7.1.0.40的版本字符串转到7.1.0.42,这只触发了大约一半客户的下载.

客户端运行的JRE版本似乎并不重要.我们已经看到人们在1.4,1.5和1.6上遇到这个问题.

有没有人有显式缓存版本的经验?是否更可靠地工作(忽略速度)而不是依赖于cache_archive的“Last-Modified”和/或“Content-Length”值(根据Sun’s Site)?

仅供参考,对象块如下所示:

<object>
  <param name="ARCHIVE" value="foo.jar">
  <param name="CODE" value="com.foo.class">
  <param name="CODEBASE" value=".">
  <param name="cache_archive" value="foo.jar">
  <param name="cache_version" value="7.1.0.40">
  <param name="NAME" value="FooApplet">
  <param name="type" value="application/x-java-applet;jpi-version=1.4.2_13">
  <param name="scriptable" value="true">
  <param name="progressbar" value="true"/>
  <param name="boxmessage" value="Loading Web Worksheet Applet..."/>
</object>

解决方法

不幸的是,不同版本的Java Plug-In具有不同的缓存行为.设置Cache-Control和Last-Modified HTTP标头是理想的解决方案,但它仅适用于JRE的 the most recent versions.

唯一可行的解??决方案是在应用程序更改时重命名应用程序jar(我们在尝试其他技巧时会看到奇怪的缓存行为,例如根据文件日期添加查询字符串).如果您有一个正确的自动部署系统,这并不难做到.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读