【问题标题】:JNLP with Custom Progress - loads applet classes before displaying progress具有自定义进度的 JNLP - 在显示进度之前加载小程序类
【发布时间】:2011-02-10 20:45:42
【问题描述】:

我有一个 JNLP,它指定了许多资源 jar。一个具有 download="progress" 以在加载其他资源 jar 时显示自定义进度条。找到并按预期显示进度,但是它会等待显示进度,直到加载了其他四个 jar(这些是 3MB)。然后它显示其余资源的进度(另外 4MB)我希望进度 jar 在开始下载主 jar 和任何依赖 jar 之前先加载并显示。加载的 jar 似乎包含由“主”jar 直接引用的类,而进度 jar 只有几 KB,并且对资源中的任何其他 jar 没有依赖项/导入。

有没有办法将 JNLP 配置为首先只下载进度 jar 并显示它,然后抓取其余资源?

【问题讨论】:

  • 根据 JNLP 规范的第 4.4 节,下载属性有两个值'eager'和'lazy'。这是由 JNLP 规范提供的 DTD 支持的。例如。 . “进步”价值从何而来?

标签: java progress-bar jnlp progress java-web-start


【解决方案1】:

默认情况下所有资源都是急切下载的;

那么您是否尝试过:在所有其他 .jar 上指定“懒惰” 然后也许 download="progress" 会优先下载并首先下载。 还可以尝试将进度排在列表的首位。

这里有一些例子:http://download.oracle.com/javase/6/docs/technotes/guides/jweb/customizeRIALoadingExperience.html

还有一个属性 jnlp.concurrentDownloads 您可以对其进行调整并可能产生影响。见http://download.oracle.com/javase/6/docs/technotes/guides/jweb/riaJnlpProps.html

【讨论】:

    【解决方案2】:

    【讨论】:

    • 呵呵。好的,这对我来说是新的。您可能需要准备一个测试用例并将其提交给 Oracle Bug DB——看看官方的说法是什么。您是否有此故障的沙盒、公开可用版本可供人们使用浏览器? (考虑到资源的大小,我怀疑很多人会这样做——但提供一个也无妨。)
    猜你喜欢
    • 1970-01-01
    • 2021-05-07
    • 1970-01-01
    • 2015-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多