ClassNotFoundException

0
24 апр 2015 12:02
Есть устройство с встроенным WEB интерфейсом. Часть функционала реализована на апплете Java.
Запуск из других машин проходит (правда приходится добавлять сайт в исключения безопасности).

А вот запуск с одного сервера с Win2008R2 - никак - пишет ClassNotFoundException.
Пробовал на другом с такой же ОС - работает.

Отключил брандмауэр, удалил антивирус, установил 11 версию IE, установил две Java 32 и 64 (т.е. как на том сервере, с которого запускается).
Добавил сайт в исключения (Конфигуратор запускал из-под админа - иначе не работает), запускал и 32 и 64 разрядные версии IE.

В стеке все в статусе RUNABLE или WAITING, только одна блокировка:

"traceMsgQueueThread" #8 daemon prio=5 os_prio=0 tid=0x154c1c00 nid=0x1920 in Object.wait() [0x1651f000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x0a4bba18> (a java.util.ArrayList)
at java.lang.Object.wait(Unknown Source)
at com.sun.deploy.trace.Trace$TraceMsgQueueChecker.run(Unknown Source)
- locked <0x0a4bba18> (a java.util.ArrayList)
at java.lang.Thread.run(Unknown Source)

Что это такое погуглил, но пока не понял.

Вот кусок HTML

<body>
    <h1>Configuration File Manager</h1>
    <applet codebase="/fs/download/"
        archive="rtuDiagnosis.jar"
        code="com.abb.rtu560.filemgr.gui.RTUApplet.class"
        height="85%" width="100%" vspace="0" hspace="0" align="center,top">
        <param name="boxbgcolor" value="255,255,255">
        <param name="progressbar" value="true">
        <param name="progresscolor" value="blue">
        <param name="mode" value="1">
        <param name="language" value="en">
        <param name="authlevel" value="31">
        <param name="routedFiletransfer" value="false">
        <param name="userInfo" value="54e3e09cb41cff5a3ea38fa7ee2b9bf80e76ac3e932dfc43254cea3f498b07df76">
        <param name="umSession" value="992545197">
    </applet>
  </body>


Подскажите что делать? Куда копать?

Ответов: 3

0
09 июн 2015 05:41
Все еще актуально?
0
27 апр 2015 07:02
Победил!

Проблема была все-таки в настройках IE. Установил настройки безопасности для зоны Интернет в минимум - заработало.
Вся проблема была в определении зоны в IE.

Странный этот IE. Я добавлял этот сайт в список "Местная интерсеть" и, что самое интересное, он определял этот сайт как Местную сеть (т.е. когда я заходил в закладку безопасность - "Местная интерсеть" была выделена). Поэтому я и настраивал безопасность для Местной интерсети.

Сегодня я зашел на сайт и увидел, что IE определяет этот сайт как "Интернет".

Теперь все понятно.
0
24 апр 2015 13:17
Во-первых, спасибо за проявленный интерес.

Ругается на класс com.abb.rtu560.filemgr.gui.RTUApplet.class.

Я переустанавливал Java 8 update 45 (32 и 64) и с антивирусом и без него несколько раз - всегда без ошибок.

При чем здесь антивирус? Я пытался отключить все, что могло помешать работе.

Спасибо за внимание.

Очень странно то, что на другом сервере с такой же ОС - Win2008 R2 апплет работает. В чем "затыка" здесь не пойму.
Разница в серверах в том, что один (на котором работает) девственнно чист - т.е. на нем нет ничего, кроме ОС (нет ни антивирусов, ни ролей).
А вот другой - на котором не идет - терминальный сервер. Я его сам настраивал, поэтому досконально знаю все настройки по безопасности.

Но сейчас я на этом сервере
- удалил антивирус Касперского,
- отключил брандмауэр,
- посмотрел в настройках Java где находится каталог с кэшем - сделал полные права на кэш для NTFS.
- попробовал запускать простую программку на Java - консольную Hello World - работает.
- запустил Process Monitor Русиновича - посмотрел на все ошибки, которые выдает IExplorer и Java - не нашел ничего криминального.

Сейчас хочу запустить fiddler - посмотреть и сравнить обмен по HTTP с "хорошим" и "плохим" сервером.

Есть еще подозрение, что мешает включенная виртуализация. Попробую ее отключить (просто был уже опыт - IDE Delphi 5 не хотела работать с включенным Hyper-threading). М.б. здесь что-то подобное. Короче - копаю. Только вот не понятно, неужели в Java нет толкового лога, чтобы отловить ошибку. В консоли Java я нашел только как вытащить стек.
Модераторы: Нет
Сейчас эту тему просматривают: Нет