Откуда апплет пытается загрузить класс? - PullRequest
2 голосов
/ 08 декабря 2011

Я пытаюсь отладить апплет, который иногда терпит неудачу с трассировкой стека ниже (на консоли Java).

Похоже, что он пытается загрузить двоичные файлы и получает HTTP REDIRECT, что недопустимо (возможно, из-за изолированной программной среды апплета?).

Есть ли способ включить подробный вывод загрузки классов (или другую отладку, которая может быть полезна) на консоли Java? Если бы это было стандартное Java-приложение (в отличие от апплета), я бы поставил «-verbose: class» в командной строке и посмотрел, что я получу - но я не знаю, как это сделать с помощью апплета.

У меня нет доступа к исходному коду для апплета - поэтому я не могу добавить какие-либо инструменты к самому коду.

java.lang.SecurityException: недопустимое перенаправление URL at com.sun.deploy.net.HttpUtils.followRedirects (неизвестный источник) at com.sun.deploy.net.BasicHttpRequest.doRequest (Неизвестный источник) at com.sun.deploy.net.BasicHttpRequest.doGetRequestEX (Неизвестный источник) at com.sun.deploy.net.DownloadEngine.isUpdateAvailable (неизвестный источник) на com.sun.deploy.cache.DeployCacheHandler.get (неизвестный источник) на sun.net.www.protocol.http.HttpURLConnection.plainConnect (Неизвестно Источник) на sun.net.www.protocol.http.HttpURLConnection.connect (неизвестный источник) на sun.net.www.protocol.http.HttpURLConnection.getInputStream (Неизвестно Источник) at sun.plugin.PluginURLJarFileCallBack.downloadJAR (Неизвестный источник) at sun.plugin.PluginURLJarFileCallBack.access $ 000 (неизвестный источник) at sun.plugin.PluginURLJarFileCallBack $ 2.run (неизвестный источник) at java.security.AccessController.doPrivileged (собственный метод) at sun.plugin.PluginURLJarFileCallBack.retrieve (Неизвестный источник) на sun.net.www.protocol.jar.URLJarFile.retrieve (Неизвестный источник) на sun.net.www.protocol.jar.URLJarFile.getJarFile (неизвестный источник) на sun.net.www.protocol.jar.JarFileFactory.get (Неизвестный источник) at sun.net.www.protocol.jar.JarURLConnection.connect (неизвестный источник) at sun.plugin.net.protocol.jar.CachedJarURLConnection.connect (Неизвестно Источник) at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFileInternal (Неизвестно Источник) at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFile (Неизвестно Источник) at com.sun.deploy.security.DeployURLClassPath $ JarLoader.getJarFile (Неизвестно Источник) at com.sun.deploy.security.DeployURLClassPath $ JarLoader.access $ 800 (неизвестно Источник) at com.sun.deploy.security.DeployURLClassPath $ JarLoader $ 1.run (неизвестно Источник) at java.security.AccessController.doPrivileged (собственный метод) at com.sun.deploy.security.DeployURLClassPath $ JarLoader.ensureOpen (неизвестно Источник) в com.sun.deploy.security.DeployURLClassPath $ JarLoader. (Неизвестно Источник) at com.sun.deploy.security.DeployURLClassPath $ 3.run (неизвестный источник) at java.security.AccessController.doPrivileged (собственный метод) в com.sun.deploy.security.DeployURLClassPath.getLoader (неизвестный источник) в com.sun.deploy.security.DeployURLClassPath.getLoader (неизвестный источник) at com.sun.deploy.security.DeployURLClassPath.getResource (неизвестный источник) at sun.plugin2.applet.Plugin2ClassLoader $ 2.run (неизвестный источник) at java.security.AccessController.doPrivileged (собственный метод) at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper (неизвестный источник) at sun.plugin2.applet.Applet2ClassLoader.findClass (неизвестный источник) at sun.plugin2.applet.Plugin2ClassLoader.loadClass0 (неизвестный источник) at sun.plugin2.applet.Plugin2ClassLoader.loadClass (неизвестный источник)at sun.plugin2.applet.Plugin2ClassLoader.loadClass0 (неизвестный источник) at sun.plugin2.applet.Plugin2ClassLoader.loadClass (неизвестный источник) at sun.plugin2.applet.Plugin2ClassLoader.loadClass (неизвестный источник) в java.lang.ClassLoader.loadClass (Неизвестный источник) at sun.plugin2.applet.Plugin2ClassLoader.loadCode (Неизвестный источник) at sun.plugin2.applet.Plugin2Manager.createApplet (Неизвестный источник) at sun.plugin2.applet.Plugin2Manager $ AppletExecutionRunnable.run (Неизвестно Источник) at java.lang.Thread.run (Неизвестный источник) Исключение: java.lang.SecurityException: недопустимое перенаправление URL

Ответы [ 2 ]

1 голос
/ 19 декабря 2013

Вы можете добавить -verbose:class в командную строку Java, перейдя в Панель управления, Java, Java, View, затем отредактировав «параметры времени выполнения».

0 голосов
/ 09 декабря 2011

Чтобы ваш апплет получал исходники НЕ ОТ своего собственного хоста, вы должны подписать его;

Вот несколько полезных руководств


Отчет, который помогает

...