Java: Security Exception " illegal url redirect

Hat jemand erlebt? Es verursacht mir eine Menge ärger bekommen eine appplet arbeiten. Der Grund, warum ich denke, dass es nicht funktioniert, wird durch die Buchse, die ist in meinem Programm mit einem server kommunizieren. Aber ich kann nicht herausfinden, wie es zu stoppen, und google ist nicht zu helfen. Ich kann nicht eine Ausnahme, weil die java-Konsole für google chrome ist nicht ausgeben der Fehler, nur was mich ein popup nach einem Klick auf den errored-applet sagen, dass es fehlerhaft ist. Wenn code benötigt wird, will ich hinzufügen. Vielen Dank im Voraus.

security:  --- parseCommandLine converted : -Djava.net.preferIPv4Stack=true
into:
[-Djava.net.preferIPv4Stack=true]
basic: Added progress listener: sun.plugin.util.ProgressMonitorAdapter@acf892
basic: Plugin2ClassLoader.addURL parent called for http://voidchar.com/Other/DatRLTest.jar
basic: Plugin2ClassLoader.addURL parent called for http://voidchar.com/Other/SharedClasses.jar
security: Blacklist revocation check is enabled
security: Trusted libraries list check is enabled
network: Cache entry found [url: http://voidchar.com/Other/DatRLTest.jar, version: null] prevalidated=false/0
cache: Resource http://voidchar.com/Other/DatRLTest.jar has expired.
network: Connecting http://voidchar.com/Other/DatRLTest.jar.pack.gz with proxy=DIRECT
network: Connecting http://voidchar.com:80/with proxy=DIRECT
basic: exception: illegal URL redirect.
java.lang.SecurityException: illegal URL redirect
at com.sun.deploy.net.HttpUtils.followRedirects(Unknown Source)
at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
at com.sun.deploy.net.BasicHttpRequest.doGetRequestEX(Unknown Source)
at com.sun.deploy.cache.ResourceProviderImpl.checkUpdateAvailable(Unknown Source)
at com.sun.deploy.cache.ResourceProviderImpl.isUpdateAvailable(Unknown Source)
at com.sun.deploy.cache.DeployCacheHandler.get(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at sun.plugin.PluginURLJarFileCallBack.downloadJAR(Unknown Source)
at sun.plugin.PluginURLJarFileCallBack.access$000(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)
Ignored exception: java.lang.SecurityException: illegal URL redirect
basic: Dialog type is not candidate for embedding
basic: Removed progress listener: sun.plugin.util.ProgressMonitorAdapter@acf892
basic: Loading Java Applet Failed...
security: Accessing keys and certificate in Mozilla user profile: null
security: Reset deny session certificate store

Edit: Hier der html code, den ich verwende zum laden des applet.


    {applet width=800 height=800 archive='DatRLTest.jar,SharedClasses.jar'    code='vc.voidwhisperer.datrl.main'}
    {PARAM name="java_arguments" value="-Djava.net.preferIPv4Stack=true"}
    {/applet}

Weniger als & größer-als-Zeichen ersetzt wurden, aufgrund der Tatsache, dass es mich nicht versuchen, etwas mit Ihnen.

Edit #2: ich habe selbst signiertes jar, ist dies immer noch geschieht. Ich hab noch herauszufinden, wie man dieses Problem lösen..

Final edit: Nach vielen Stunden der Arbeit an diesem habe ich schließlich auf eine Lösung, Dank einem Freund in einem irc-channel. Hier ist der Allgemeine Kern, wie es behoben wurde:

  • Wenn man sich eine bestimmte Zeile der Ausgabe: Netzwerk: Anschluss http://voidchar.com/Other/DatRLTest.jar.pack.gz mit proxy=DIRECT.
  • Auf der Suche für diese Datei, die es gar nicht gibt.
  • Tun, einige der Forschung in die Datei geben, es ist ein pack200 jar-Datei, die gemacht werden können mit einem Glas und dann das folgende mit Ihr: die öffnung der cmd und der Eingabe von 'pack200 example.jar.pack.gz [JarLocation]'.
  • Jetzt ersetzen example.jar mit dem Namen der jar-Datei, aber lassen Sie die .pack.gz es.
  • Laden Sie nun diese Datei in das gleiche Verzeichnis wie das applet und versuchen, laden Sie das applet erneut.

HINWEIS: Stellen Sie sicher, dass das applet signiert ist!! Hoffe, dies hilft anderen lösen das problem hatte ich auch.

Ich habe hatte das gleiche problem mit ol-in-berlin.de/gadget/reitti.jar, wenn der client aktualisiert auf java 7. Deaktivieren von java-next generation plug-in auf der client-Seite wurde eine erste (schlechte) Lösung. Zum Glück fand ich diesen post von dir und die Bereitstellung der .pack.gz Datei funktioniert. Vielen Dank für den Austausch. (Vielleicht sollten Sie gebucht haben, es als eine selbst-Antwort) Nun könnte jemand eine ausführliche Erklärung, warum das passiert, das wäre toll.

InformationsquelleAutor | 

Schreibe einen Kommentar