1

在 JNLP 文件中,jar 资源的版本属性是与任何元数据(例如清单)相关还是只是由创建 JNLP 文件的用户任意设置?

4

1 回答 1

5

JNLP 规范的第 6 节在第 6.3 节“基于版本的下载协议”下提供了以下信息。


对于基于版本的下载协议,所有资源都由 URL/version-id 对唯一标识。因此,JNLP 客户端可以在任何给定时间请求位于特定 URL 的资源的特定版本。

JNLP 客户端发出一个 HTTP GET 请求,其中包括它需要的特定版本的资源。请求包含字段 version-id,它指定了请求的版本。例如,给定以下 jar 元素:

<jar href="http://www.mysite.com/b.jar" version="2.3+"/>

那么 JNLP 客户端必须发出以下 HTTP GET 请求14:

http://www.mysite.com/c.jar?version-id=2.3%2B

JNLP 客户端必须检查 HTTP 响应状态代码和 MIME 类型以确定结果是否成功。有效响应在第 6.1.2 节中描述。对于上述 jar 元素,不能返回 application/x-java-archive-diff MIME 类型。它只能针对增量请求返回。

请求中使用的版本字符串不一定准确,例如 2.3+。Web 服务器必须通过设置 HTTP 标头字段:x-java-jnlp-version-id 来指定响应中返回的资源的确切版本 ID。返回的确切版本必须与请求的版本字符串匹配。


不幸的是规范。无法在线浏览,但可以下载。我发现它对于 JWS 开发非常宝贵。

于 2010-10-05T10:09:43.947 回答