Здравствуйте,
Помогите разобраться в проблеме, в Java я совсем не специалист, поэтому прошу больно не пинать
Есть embedded устройство, на котором крутится мелкий http сервер, на нем лежит java applet предназначеный для получения и отображения телеметрической информации с устройства.
Applet был создан года три назад на основе примера, долгое время прилежно работал и его ни кто не трогал.
Недавно я обнаружил обнаружил, что апплет грузится перестал, при загрузке выдает ClassNotFoundExeption. После чего возникла эта проблема сказать точно не могу, поменялись версия Java, версия Internet Explorer, версия Windows.
Причем апплет нормально грузится если открывать его локально, с диска, и не грузится с локального http сервера, запущеного на моей машине.
jar файл с сервера загружается нормально.
Пересборка апплета не помогла.
Подскажите в какую сторону копать?
С Уважением,
Виталий.
Здравствуйте, trizna, Вы писали:
T>Здравствуйте,
T>Помогите разобраться в проблеме, в Java я совсем не специалист, поэтому прошу больно не пинать
T>Есть embedded устройство, на котором крутится мелкий http сервер, на нем лежит java applet предназначеный для получения и отображения телеметрической информации с устройства.
T>Applet был создан года три назад на основе примера, долгое время прилежно работал и его ни кто не трогал.
T>Недавно я обнаружил обнаружил, что апплет грузится перестал, при загрузке выдает ClassNotFoundExeption. После чего возникла эта проблема сказать точно не могу, поменялись версия Java, версия Internet Explorer, версия Windows.
T>Причем апплет нормально грузится если открывать его локально, с диска, и не грузится с локального http сервера, запущеного на моей машине.
T>jar файл с сервера загружается нормально.
T>Пересборка апплета не помогла.
T>Подскажите в какую сторону копать?
T>С Уважением,
T>Виталий.
Начать нужно с того что запостить сюда весь стек эксепшена.
Здравствуйте, Nicht, Вы писали:
T>>Подскажите в какую сторону копать?
N>Начать нужно с того что запостить сюда весь стек эксепшена.
Trace level set to 5: all ... completed.basic: Added progress listener: sun.plugin.util.ProgressMonitorAdapter@1c2e5bb
basic: Plugin2ClassLoader.addURL parent called for http://10.0.0.244/MyNE64App.jar
network: Cache entry not found [url: http://10.0.0.244/MyNE64App.jar, version: null]
network: Connecting http://10.0.0.244/MyNE64App.jar with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
network: Cache entry not found [url: http://10.0.0.244/MyNE64App.jar, version: null]
network: Cache entry not found [url: http://10.0.0.244/MyNE64App.jar, version: null]
network: Connecting http://10.0.0.244/MyNE64App.jar with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
network: Connecting http://10.0.0.244/MyNE64App.jar with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
java.io.IOException: Invalid Http response
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getJarFileWithoutCache(Unknown Source)
at com.sun.deploy.net.DownloadEngine.downloadJarFileWithoutCache(Unknown Source)
at sun.plugin.PluginURLJarFileCallBack$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin.PluginURLJarFileCallBack.retrieve(Unknown Source)
at sun.net.www.protocol.jar.URLJarFile.retrieve(Unknown Source)
at sun.net.www.protocol.jar.URLJarFile.getJarFile(Unknown Source)
at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source)
at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source)
at sun.plugin.net.protocol.jar.CachedJarURLConnection.connect(Unknown Source)
at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFileInternal(Unknown Source)
at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFile(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.access$1000(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
network: Cache entry not found [url: http://10.0.0.244/MyNE64App.jar, version: null]
network: Connecting http://10.0.0.244/MyNE64App.jar with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
network: Cache entry not found [url: http://10.0.0.244/MyNE64App.jar, version: null]
network: Cache entry not found [url: http://10.0.0.244/MyNE64App.jar, version: null]
network: Connecting http://10.0.0.244/MyNE64App.jar with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
network: Connecting http://10.0.0.244/MyNE64App.jar with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
java.io.IOException: Invalid Http response
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getJarFileWithoutCache(Unknown Source)
at com.sun.deploy.net.DownloadEngine.downloadJarFileWithoutCache(Unknown Source)
at sun.plugin.PluginURLJarFileCallBack$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin.PluginURLJarFileCallBack.retrieve(Unknown Source)
at sun.net.www.protocol.jar.URLJarFile.retrieve(Unknown Source)
at sun.net.www.protocol.jar.URLJarFile.getJarFile(Unknown Source)
at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source)
at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source)
at sun.plugin.net.protocol.jar.CachedJarURLConnection.connect(Unknown Source)
at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFileInternal(Unknown Source)
at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFile(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.access$1000(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
network: Cache entry not found [url: http://10.0.0.244/, version: null]
network: Cache entry found [url: http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class, version: null] prevalidated=false/0
cache: Resource http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class has expired.
network: Connecting http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
network: ResponseCode for http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class : 200
network: Encoding for http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class : null
network: Disconnect connection to http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class
CacheEntry[http://10.0.0.244/my/NE64/pkg/MyNE64Applet.class]: updateAvailable=false,lastModified=Mon May 17 22:02:45 NOVST 2004,length=400
network: Cache entry found [url: http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class, version: null] prevalidated=false/0
cache: Resource http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class has expired.
network: Connecting http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class with proxy=DIRECT
network: Connecting http://10.0.0.244:80/ with proxy=DIRECT
network: ResponseCode for http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class : 200
network: Encoding for http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class : null
network: Disconnect connection to http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class
CacheEntry[http://10.0.0.244/my/NE64/pkg/MyNE64Applet/class.class]: updateAvailable=false,lastModified=Mon May 17 22:02:45 NOVST 2004,length=400
java.lang.ClassNotFoundException: my.NE64.pkg.MyNE64Applet.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
basic: load: class my/NE64/pkg/MyNE64Applet.class not found.
java.lang.ClassNotFoundException: my.NE64.pkg.MyNE64Applet.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
basic: Removed progress listener: sun.plugin.util.ProgressMonitorAdapter@1c2e5bb
security: Reset deny session certificate store
Как я понял Java yt vj;tn загрузить апплет, однако он пректрасно грузится из браузера по ссылке
http://10.0.0.244/MyNE64App.jar
А>>java.lang.ClassNotFoundException: my.NE64.pkg.MyNE64Applet.class
SA>Судя по этой ошибке, неверно прописано имя стартового класса. Окончания .class быть не должно. Старые версии Java были более толерантными к таким ошибкам.
А как его прописать?
NetBean при запуске отладки ругается, что не может найти главных классов. Возможно из-за того, что в классе нет метода main, который для апплета вроде не нужен.
Простите за чайниковский вопрос, гугл мне не помог, возможно вопрос не так сформулировал