JNLP不自动更新JAR文件(JNLP does not auto updating JAR fil

2019-10-30 01:17发布

我在这样的环境下,我们必须更新客户端的工作jar中每2个月最大。 所以,作为一个解决方案,我建议使用JNLP通过使用这种方法,我们不必担心,每个用户使用的是最新版本还是没有。 正如,有各部门的100多个客户。

但问题是JNLP不升级新jar下面的文件是my.jnlp文件

<?xml version="1.0" encoding="utf-8"?> 
<jnlp spec="1.0+" codebase="http://192.168.1.26:8080/" href="Test.jnlp">
<information>
    <title>HC</title>
    <vendor>DRL</vendor>
    <homepage href="http://192.168.1.26:8080/" />
    <description>DRL</description>
    <offline-allowed/>
</information>
<security>
    <all-permissions/>
</security>
<resources>
    <j2se version="1.6+" />
    <jar href="JnlpTest.jar" download="eager" />
</resources>
<application-desc 
    name="HC-DRL"
    main-class="com.drl.simap.client.module.ui.Splash" />
</jnlp>

我的工作环境:Tomcat的6.0服务器和下面的教程在这里

Answer 1:

如果你下载的JNLP 规范 ,并期待在第6章有关于缓存一整节:“资源6下载和高速缓存”

你可以尝试将版本号添加到您的jar文件,然后使用JNLP罐子版本属性。

如果您目前不这样做,该规范规定了以下内容:

使用基本的下载协议必须位于基于URL的高速缓存中的条目下载。 从在答复的Last-Modified头字段的HTTP GET请求中获取的时间戳应与下载的资源一起存储。 时间戳来确定服务器上的副本是新的。

该JNLP客户端不能假定HTTP GET请求将返回相同的JAR文件为每个请求。 该JNLP客户必须定期检查Web服务器,看看是否有更新的版本可用。 建议使用此检查应用程序启动之前进行,而是由一个JNLP客户端使用的精确算法依赖于特定的实现。 例如,如果一个客户端JNLP处于脱机状态,则不需要检查执行。

上述缓存规则也适用于使用在未指定的版本属性扩展下载协议下载扩展描述符。



文章来源: JNLP does not auto updating JAR file