Приложение Webstart очень медленно, когда сервер не работает - PullRequest
1 голос
/ 19 апреля 2011

Что у меня есть:

  • Сервер Tomcat, который содержит файл jnlp со всеми необходимыми библиотеками и который по какой-то причине может быть отключен
  • Очень толстое приложение для свинга, которое требует всех разрешений на ценные бумаги
  • Файл JNLP:

    <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>
    

Клиентская ОС: Windows XP и Windows 7. Файл JNLP на клиентском компьютере всегда запускается следующим образом: ярлык javaws.exe DS.jnlp

Проблема: Когда tomcat не работает, приложение запускается из кеша формы, но работает слишком медленно, с ним невозможно работать. Не можете понять, какое влияние javaws оказывает на приложение, когда tomcat не работает? Пожалуйста, помогите мне решить эту проблему

Спасибо, Андрей

Обновление 1: после игры и тестирования на разных системах я заметил, что приложение отлично работает на Windows XP. Похоже, что javaws пытается проверить все эти подписанные jar-файлы в фоновом режиме при запуске приложения, а не просто читать их наличными. На Windows XP та же версия Java не делает этого вообще. Просто запускает приложение.

Обновление 2: как представляется, время ожидания подключения Windows 7 в 10 раз превышает время ожидания Windows XP. По сути, если бы я мог как-то установить общее время ожидания соединения, которое могло бы решить проблему.

Обновление 3: изменение тега не помогло вообще. Он все еще работает так же.

1 Ответ

1 голос
/ 19 апреля 2011

Похоже, если вы работаете с <update check="timeout">, который является значением по умолчанию, если не указано <update...>. Это пытается обновить, пока не истечет тайм-аут и, если не удалось (Tomcat down), продолжает в фоновом режиме (продолжает сбой). попробуй использовать <update check="always">.

Для справки см. Документ на <update ...> тег

...