Was den Fehler, den Sie ich kann mir drei mögliche Probleme:
1) Ihr Applet fragt nicht die Erlaubnis für das, was er zu tun versucht.
Was passiert? Die "Berechtigungen" sagen dem Benutzer, wie viel "Power" die Anwendung über den Computer des Benutzers hat. "sandbox" lässt die Anwendung nicht viel tun und "all-permissions" verschaffen dem Applet ein wenig mehr Kontrolle. Natürlich sollten Sie die niedrigste Berechtigung verwenden, die Sie verwenden können (z. B. Sandbox), da die untere Warnung, die der Benutzer erhält, umso geringer ist, je niedriger die zulässige Berechtigung ist. Wenn Ihr Applet beispielsweise versucht, auf die persönlichen Dateien des Benutzers zuzugreifen, aber das Attribut "Berechtigungen" auf "Sandbox" gesetzt ist, funktioniert das Applet nicht, da es nicht um Erlaubnis gefragt hat, was es zu tun versucht .
Wie löst man es?Einfach, einfach ändern Permissions: sandbox
zu Permissions: all-permissions
2) Ihr Computer lässt keine selbstsignierten Anwendungen laufen.
Was passiert? Die meisten Browser haben sehr strenge Regeln für Applets. vor allem, wenn Sie alle Berechtigungen benötigen (was Sie nicht sind).
Wie löst man es? Ändern Sie Ihre Java-Sicherheit in Java-Systemsteuerung in etwas niedriger. Sie können entweder nach "Java Control Panel" in Ihrem Computer oder gehen Sie selbst zu diesem Pfad (Windows 8 kann nicht finden Sie die Java-Systemsteuerung aus irgendeinem Grund, so dass Sie selbst suchen müssen) C:\program files\java\jre7\bin\javacpl.exe
in der JCP gehen auf Sicherheit Registerkarte und ändere es auf mittel.
3) Ihr Betriebssystem erlaubt Ihnen nicht, Applets auszuführen, die Sie selbst signiert haben. (Achten Sie auf "Applets, die Sie selbst unterschrieben haben", nicht "selbstsignierte Applets", das ist alles, was kein offizielles Zertifikat hat. Betriebssysteme behandeln sie normalerweise anders.)
Wie löst man es? Laden Sie das Applet auf einen Webhost-Dienst hoch und geben Sie es von einem anderen Computer ein. Alle Computer, außer denen, mit denen Sie das Applet signiert haben, sollten in der Lage sein, das Applet zu öffnen.
Was Sie erwähnt haben über Benutzer keine Sicherheitsaufforderungen erhalten, ist es eine fast unmögliche Nachfrage. Mit der Vielzahl von Betriebssystemen, Browsern und Anti-Viren können Sie nie wissen. Allerdings gibt es ein paar Methoden, in denen Sie die Menge reduzieren Sicherheit fordert:
- Selbst signierte Applets (Selbst Unterzeichnung ist, was Sie mit der Eingabeaufforderung tat) sind sehr wahrscheinlich immer Sicherheitsabfragen zu zeigen. Sie können ein offizielles SSL kaufen und es wird die Anzahl der Eingabeaufforderungen erheblich reduzieren.
- Wenn Sie "alle Berechtigungen" benötigen, erhalten Sie viel mehr Eingabeaufforderungen als wenn Sie "Sandbox" -Berechtigungen benötigen.
empfehle ich Ihnen unter den folgenden Links zu sehen:
SSL: Where could I buy a valid SSL certificate?
Berechtigungen: http://docs.oracle.com/javase/tutorial/deployment/applet/security.html
Wenn Sie Problem Nummer 1 haben, das wäre der Manifest-Datei:
Manifest-Version: 1.0
Created-By: 1.7.0_51
Permissions: all-permissions
Application-Name: My Farming Business
Application-Library-Allowable-Codebase: www.mycompany.com/where_the_applet_jar_actually_lives
Caller-Allowable-Codebase:www.mycompany.com
Codebase: *
Entweder (Wenn das Problem 2 oder 3 ist), müssen Sie die Manifestdatei nicht einmal ändern.
Wie @tigran erwähnt, wenn Sie Ihr Applet von mehreren verschiedenen Orten ausführen möchten, würden Sie wahrscheinlich "Codebasis" zu * ändern.
In meinem Manifest habe ich sogar "Implementierung-Vendor: Company Name", aber ich habe nicht "Trusted-Only" -Eintrag. Welche Warnungen werden in der Java Console angezeigt? –
Wie lautet Ihre Java-Sicherheitsstufe in Ihren Einstellungen? – Behe
Das ist eine wirklich gut gestellte Frage. Sehr selten. Sehr schön. –