2014-11-20 12 views
6

Ich habe das schon gefragt und wurde stark downvoted. Leider kann ich es immer noch nicht lösen. Ich weiß nicht, was ich mache, aber früher oder später verliere ich die Fähigkeit, Java-Applets und Java-Web-Start-Anwendungen in allen Browsern auszuführen.Notwendige und ausreichende Bedingungen, um Java-Applets und JWS-Anwendungen im Browser auszuführen?

Hier ist ein Beispiel, was passiert.

Ich eröffne Seite mit Applets http://csis.pace.edu/~bergin/Java/applets.htm und folgendes Bild erhalten:

enter image description here

mit Zeichen-Plugins wurden blockiert. Ich versuche

enter image description here

zu entsperren, die bewirkt, dass ein weiterer Dialog

enter image description here

nach OK Ich habe eine andere

enter image description here

nächsten

enter image description here

wenn

geklickt

enter image description here

Und so weiter.

Applet wird nicht ausgeführt.

Nach dem Tanzen mit PATHes, aktualisiert Java und so eins, sobald ich applet laufen lassen kann. Aber früher oder später werde ich wieder in dieser Position stecken.

Ich würde gerne wissen, ist es möglich, diese Situation im Prinzip auszuschließen?

Ich meine, ich möchte die Sicherheit überhaupt nicht deaktivieren, aber ich meine, dass im Falle meiner ausdrücklichen Erlaubnis alles laufen sollte. Ist es möglich, das zu tun?

UPDATE

Zunächst einmal verstehe ich nicht, warum kann ich nicht laufen Applet auf veraltete Java wenn ich wollen?

Ich bin ein Mensch und Roboter sollten mir gehorchen! :)

Angenommen, ich möchte mein Applet auf alte Version von Java debuggen, warum nicht?

Zweitens gibt es keine Informationen darüber, welche Version es denkt und welche Version es will?

Ohne diese Information ist es möglich, dass nur ein Fehler im Versionserkennungsmechanismus vorhanden ist.

Ich habe mehrere Versionen von Java in Program Files, da ich ein Java-Entwickler bin. Wie kann ich dann wissen, welchen es benutzt?

UPDATE 2

Ich habe meine Java 1.8.0_20-1.8.0_25 aktualisiert und jetzt haben Situation geändert, aber Applets sind Schweller unmöglich zu laufen.

Der Beweis I "neueste" java haben:

enter image description here

Der Beweis, den ich hinzugefügt haben, die Website oben auf Ausschlussliste:

enter image description here

Die Wirkung von Applet laufen:

enter image description here

(Applet läuft nicht)

Klicken auf Details zur Folge:

enter image description here

(keine alle Details in der Tat)

Also, was zu tun?

UPDATE 3

Diese Seite funktioniert nicht: http://ssd.jpl.nasa.gov/sbdb.cgi?sstr=2012VP113;orb=1;cov=0;log=0;cad=0#orb

(show Orbit-Diagramm)

Nachladen/Browser Neustart hilft nicht.

+0

Was sehen Sie, wenn Sie im letzten Dialogfeld auf "Details" klicken? Kopieren und fügen Sie die vollständige Ausnahme für uns ein. Beachten Sie, dass Java-Applets erwarten, dass die neueste Version von Java installiert wird. Stellen Sie sicher, dass die automatische Java-Aktualisierung aktiviert ist, sodass Sie, sobald eine neue Java-Version verfügbar ist, zur Aktualisierung aufgefordert werden. –

+0

Wenn ich Details drücke, gehe ich ohne wirkliche Details zur Konsole. Du meinst, wenn ich nicht das neueste Java installiert habe, kann ich das Applet nicht einmal bei meiner direkten Bestellung ausführen? –

+0

Es ist mein Verständnis, dass die Java-Sicherheit seit zwei Jahren verschärft ist, so dass Applets blockiert werden, wenn Java nicht aktualisiert wird. Aber ich bin mir nicht 100% sicher, also solltest du vielleicht etwas darüber suchen oder versuchen, das Programm mit dem neuesten jre auszuführen, und es dann mit älteren jre-Versionen erneut versuchen, um zu sehen, bei welcher Version es nicht mehr funktioniert. –

Antwort

1

Ich schaute auf Ihre HTML-Quelle und erkannte, dass Sie die .class-Datei direkt verwenden, anstatt sie in eine JAR-Datei zu verpacken. Dies ist, was Sie haben:

<applet code="GSort.class" width=700 height=400> 

Ich denke, Applets nicht mehr funktionieren, wenn Dateien mit .class- direkt aufgrund neuer Sicherheitsanforderungen. Sie müssen in JAR-Dateien eingebettet werden, da Sie einige Sicherheitseinstellungen zum Meta-Inf-Ordner der JAR-Datei hinzufügen müssen. Hier ist, wie Oracle ein Applet empfiehlt den Einsatz:

https://docs.oracle.com/javase/tutorial/deployment/applet/deployingApplet.html

Edit: Ich versuchte es noch einmal mit dem Hinzufügen der Website-URL auf die Java-Sicherheitsausnahmeliste und dieses Mal habe ich es an die Arbeit! Es sieht so aus, als ob Chrome nach dem Beenden im Speicher bleibt, so dass sich die Java-Sicherheit nicht ändert, es sei denn, Sie haben Chrome komplett heruntergefahren und neu gestartet. Der einfachste Weg ist der Internet Explorer. Versuchen Sie es mit Internet Explorer und es sollte funktionieren (vorausgesetzt, Sie haben noch die Website unter Java-Sicherheitsausnahmeliste hinzugefügt).

+0

Sind Sie sicher, dass dies der Fall ist? Es ist nicht meine Seite, es ist nur die erste Seite für "Java Applet Probe" gegoogelt. Wenn der Grund dafür ist, dass die Datei nicht im JAR-Format vorliegt, warum sagt Runtime das nicht? Warum sagen Fehlermeldungen etwas völlig Irrelevantes? –

+2

Ich habe es erneut versucht, indem ich die Site-URL zur Java-Sicherheitsausnahmeliste hinzugefügt habe, und dieses Mal habe ich es zum Laufen gebracht! Es sieht so aus, als ob Chrome im Speicher verbleibt, so dass die Änderung der Java-Sicherheit keinen Einfluss darauf hat, solange Sie Chrome nicht vollständig herunterfahren und neu starten. Der einfachste Weg ist der Internet Explorer. Versuchen Sie es mit Internet Explorer und es sollte funktionieren (vorausgesetzt, Sie haben noch die Website unter Java-Sicherheitsausnahmeliste hinzugefügt). Wenn es nicht funktioniert, poste bitte den Screenshot. –

+0

Hm, es fing auch an, für mich zu arbeiten! Also, die aktuelle Hypothese ist etwas Caching nach dem Hinzufügen von Website zu der Ausschlussliste .... –