【问题标题】:Rebooting JBoss / Wildfly causes webstart to load all jar files again重新启动 JBoss / Wildfly 会导致 webstart 再次加载所有 jar 文件
【发布时间】:2015-02-25 09:07:34
【问题描述】:

我们正在开发一种在客户端 PC 上运行并通过 webstart (JNLP) 从应用服务器加载的软件。作为应用服务器,我们的客户可以在 weblogic 和 jboss (wildfly) 之间进行选择。所有 jars,webstart 客户端通过 webstart 加载,都打包在应用服务器中部署的 WAR 文件中。 war 文件不包含除 jar 之外的任何其他内容。 我们目前遇到以下问题: 每次我们重新启动 jboss 时,webstart 客户端都会再次加载所有的 jar 文件,尽管它们并没有改变。 使用 weblogic,我们没有这个问题。 知道是什么原因造成的以及如何阻止这种行为吗?

【问题讨论】:

    标签: jboss weblogic updates java-web-start


    【解决方案1】:

    我不确定为什么 Weblogic 和 JBoss 之间会有所不同,但您应该在您的 JNLP 文件中执行以下操作:

    • 为每个 jar 指定一个版本,例如:

    <jar href="my.jar" main="true" version="1.0"/>

    • 指定启用的 JNLP 版本

    <property name="jnlp.versionEnabled" value="true"/>

    这应确保检查版本并仅在需要时下载。你可以在Oracle docs here看到更多。

    【讨论】:

      【解决方案2】:

      检查您的服务器是否返回正确的 HTTP 代码。 Webstart(和浏览器)发送 HTTP 请求以查看资源是否被修改。如果未修改,服务器应返回代码“304 Not Modified”。

      您可以使用这个 chrome 插件来监控 HTTP 请求和响应:

      https://chrome.google.com/webstore/detail/live-http-headers/iaiioopjkcekapmldfgbebdclcnpgnlo?utm_source=chrome-app-launcher-info-dialog

      【讨论】:

        猜你喜欢
        • 2013-05-22
        • 2020-03-03
        • 2016-09-29
        • 1970-01-01
        • 1970-01-01
        • 2016-09-15
        • 1970-01-01
        • 2016-05-04
        • 1970-01-01
        相关资源
        最近更新 更多