У меня есть апплет с кнопкой logout"
.Кнопка завершает сеанс, вызывая скрипт CGI, а затем убивает Java VM, вызывая System.exit()
.Проблема заключается в том, что когда пользователь пытается войти снова в том же окне браузера - апплет не может загрузить с ClassNotFoundException
:
load: class lucent/fm/parts/BlankPage.class not found.
java.lang.ClassNotFoundException: lucent.fm.parts.BlankPage.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: open HTTP connection failed:http://example.com/html/lucent/fm/parts/BlankPage/class.class
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 7 more
Exception: java.lang.ClassNotFoundException: lucent.fm.parts.BlankPage.class
Он появляется только в Internet Explorer, а не в Firefox.Плагин Java:
Java Plug-in 1.6.0_20<br>
Using JRE version 1.6.0_20-b02 Java HotSpot(TM) Client VM
Прямой сценарий следующий: :
1. Войдите в систему (загрузите апплет).
2.Выйдите из системы (он закрывает апплет, но окно браузера остается).
3. Нажмите на адресную строку и нажмите Enter.
4. Не удается загрузить апплет, и в консоли Java можно увидеть ClassNotFoundException
..
5. Обновить страницу - сервер перенаправляет на страницу входа;после входа апплет снова не загружается и выдает исключение.
Просмотр журнала доступа Apache показал, что на шаге 4 браузер (или плагин) пытается загрузить файлы JAR и получает ошибку HTTP.Это нормально, потому что сеанс истек.Странная вещь происходит в 5-м пункте - нет запроса на банки!Кажется, что браузер или плагин запоминает неудачные попытки и даже не пытается загрузить файлы JAR.Он только пытается загрузить необработанный файл .class, которого нет на сервере.
Правильно ли сделан мой вывод?Как я могу справиться с такой ошибкой?Можно ли заставить плагин Java загружать файлы JAR?
Я проверил, что включение кэширования в панели управления Java не помогает.Установка параметра codebase_lookup
на "false"
также не помогает.Это только препятствует попытке загрузить файл "class"
напрямую.
Заранее благодарим за любые предложения.