服务器关闭时 Webstart 应用程序非常慢

发布于 2024-11-02 02:33:04 字数 2083 浏览 0 评论 0 原文

我拥有的:

  • Tomcat 服务器,其中包含带有所有必需库的 jnlp 文件,并且可能因某种原因关闭
  • 非常胖的 Swing 应用程序,需要所有安全权限
  • JNLP 文件:

    
     <信息>
     <标题>DS WebStart
     <供应商>DS
     <主页 href="index.html"/>
     <允许离线/>
     
      
    
    
    <安全>
     <所有权限>;
    
    
    <资源>
    
    
    
    
    
    
    ;
    
    />
    ;
    
    
    
    >
     
    
     
    
    

客户端操作系统:Windows XP 和 Windows 7。 客户端计算机上的 JNLP 文件始终通过快捷方式这样启动:javaws.exe DS.jnlp

问题: 当 tomcat 关闭时,应用程序会从缓存中启动,但速度太慢,无法使用它。无法弄清楚当tomcat宕机时javaws对应用程序有什么影响?请帮我解决这个问题

谢谢, Andrey

更新 1:在不同的系统上进行试验和测试后,我注意到该应用程序在 Windows XP 上运行得很好。看来 javaws 正在尝试在启动应用程序时检查后台所有签名的 jar,而不是仅仅从现金中读取它。在Windows XP上,相同版本的java根本不这样做。它只是启动应用程序。

更新 2:看来 Windows 7 连接超时比 Windows XP 超时高 10 倍。基本上,如果我可以以某种方式设置一些可以解决问题的一般连接超时。

更新3:更改标签根本没有帮助。它的工作原理仍然是一样的。

What I have:

  • Tomcat server which contains jnlp file with all required libraries and which could be turned off for some reason
  • Very fat swing application which requires all securities permissions
  • JNLP file:

    <jnlp spec="1.0+" codebase="http://somehost:6020/webstart/DS/xxx/" href="DS.jnlp">
     <information>
     <title>DS WebStart</title>
     <vendor>DS</vendor>
     <homepage href="index.html"/>
     <offline-allowed/>
     <icon href="http://somehost:6020/DS_5.6.0.333/icon_32x32.gif"/>
     <icon kind="splash" href="http://somehost:6020/DS_5.6.0.333/Splash.jpg"/> 
    </information>
    
    <security>
     <all-permissions/>
    </security>
    
    <resources>
    
    <j2se version="1.6.0_12" max-heap-size="128m" href="http://java.sun.com/products/autodl/j2se"
        java-vm-args="-XX:MaxHeapFreeRatio=25 -XX:MinHeapFreeRatio=20 -Xss2M"/>
    
    
    
    <jar href="http://somehost:6020/DS_5.6.0.333/sds.jar" download="eager"/>
    <jar href="http://somehost:6020/DS_5.6.0.333/sresources.jar" download="eager"/>
    
    <jar href="http://somehost:6020/DS_5.6.0.333/scommons-logging.jar" download="eager"/>
    <jar href="http://somehost:6020/DS_5.6.0.333/slog4j.jar" download="eager"/>
    <jar href="http://somehost:6020/DS_5.6.0.333/stclib.jar" download="eager"/>
    <jar href="http://somehost:6020/DS_5.6.0.333/sconcurrent.jar" download="eager"/>
    <jar href="http://somehost:6020/DS_5.6.0.333/scon.jar" download="eager"/>
    <jar href="http://somehost:6020/DS_5.6.0.333/sDSLauncher-1.0.jar" download="eager"/
    <nativelib href="http://somehost:6020/DS_5.6.0.333/jdic-native.jar" download="eager" />
     </resources>
    
     <application-desc main-class="com.ds.app.Main" />
    </jnlp>
    

Client OS: Windows XP and Windows 7.
JNLP file on clients machine always launched like this through shortcut: javaws.exe DS.jnlp

The problem:
When tomcat is down application is launched form cache but is soooo sloooow it is impossible to work with it. Can't figure out what impact javaws has on the application when tomcat is down? Please help me to fix this issue

Thanks,
Andrey

Update 1: After playing around and testing on different systems I've noticed that application works perfectly on Windows XP. As it seems javaws is trying to check all those signed jars on the background while launching application instead of just reading it from cash. On windows XP same version of java doesn't do that at all. It just launches application.

Update 2: As it seems Windows 7 connection timeout is 10 times higher than Windows XPs timeout. Basically if I could somehow set some general connection timeout that could fix the problem.

Update 3: Changing tag didn't help at all. It still works the same.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

顾挽 2024-11-09 02:33:04

这听起来就像您正在使用 运行,如果没有指定 ,这是默认值。这将尝试更新,直到达到超时,如果失败(Tomcat 关闭),则在后台继续(继续失败)。尝试使用

有关参考,请参阅 上的文档<更新...>标签

This sounds like if you are running with <update check="timeout"> which is the default if no <update...> specified. This tries to update until a timeout is reached and if failed (Tomcat down), continues on background (continues failing). try to use <update check="always">.

For reference see the doc on <update ...> tag

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文