2 Stimmen

java.util.PropertyPermission user.home read (Zugriff verweigert)

Ich habe ein signiertes Applet, in dem ich JFilechooser zum Durchsuchen von Dateien aus dem lokalen Dateisystem zum Hochladen verwendet habe. Es läuft ordnungsgemäß unter Windows und Mac. Aber in Linux zeigt es den Fehler Zugriff verweigert (java.util.PropertyPermission user.home read) . Ich habe im Internet gesucht und einen gefunden Lösung . Ich habe dies getan, konnte das Problem aber nicht lösen.

Ich habe die Datei .java.policy in meinem Home-Ordner erstellt.

grant codeBase "http://bioinfo.utu.fi/applet/*" {
  permission java.io.FilePermission "/home/raj/-", "read";
  permission java.io.FilePermission "/home/raj/-", "write, delete";
};

Ich konnte den JFileChooser-Dialog in Linux nicht aufrufen, wenn ich auf die Schaltfläche "Durchsuchen" klicke, sondern es wurde eine Exception angezeigt: Zugriff verweigert (java.util.PropertyPermission user.home read) . Wie kann ich es unter Linux ausführen? Ich schätze Ihre Hilfe.

Jüngstes Update:

Ich habe die Datei java.policy über das Terminal durchsucht

[raj@localhost Desktop]$ locate java.policy
/home/raj/.java.policy
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/security/java.policy

Ich habe folgende Zeilen in der Datei /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/security/java.policy hinzugefügt

grant{
    ...
    ...
    permission java.util.PropertyPermission "user.home", "read";
        permission java.io.FilePermission "/home/raj", "read";
    permission java.io.FilePermission "${user.home}${/}*", "read,write";

    }

Nein, ich kann JFileChoose Dialogue sehen. Jetzt habe ich ein anderes Problem. Ich konnte nicht sehen, und Dateien auf Home-Verzeichnis in der Applet-Datei Chooser Dialog.

-1voto

user592704 Punkte 3594

Das Problem könnte viel tiefer liegen, als es den Anschein hat...

Haben Sie die user.home nicht mit einem Applet, sondern mit einem lokalen util überprüft? Ist es "?" oder etwas anderes als ein absoluter Pfad?

Ich empfehle Ihnen, es mit System.getProperty("user.home") zu überprüfen, aber mit einem Desktop-Utility;

Es kann auch ein Problem mit dem 32-Bit-JDK auf dem Client-Rechner geben. Es ist ein bekanntes Fehler Das könnte also das Problem sein.

Bitte melden Sie, was hilft

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X