Tomcat - java.security.AccessControlException: Zugriff verweigert (java.lang.RuntimePermission accessDeclaredMembers)

Tomcat - java.security.AccessControlException: Zugriff verweigert (java.lang.RuntimePermission accessDeclaredMembers)

Problem

Wie ich inpreviously post sagte, hat Tomcat 5.5.25 viele Änderungen an der Richtliniendatei vorgenommen, was die Sicherheit der Webanwendung verbessern kann, aber auch viele Probleme verursacht. Weitere Fehlermeldungen finden Sie unter:

SEVERE: Context initialization failed java.security.AccessControlException:
      access denied (java.lang.RuntimePermission accessDeclaredMembers) at
      java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)

Lösung

Problem mit der Richtliniendateivi 04webapps.policy. Diese Datei befindet sich normalerweise im Ordnerpolicy.d

example@example-desktop:/etc/tomcat5.5/policy.d$ 04webapps.policy

Fügen Sie der Richtliniendatei die folgende Anweisung hinzu

permission java.lang.RuntimePermission "accessDeclaredMembers";

Zum Beispiel,

Datei: 04webapps.policy

    // JVM properties to allow read access
    permission java.util.PropertyPermission "java.version", "read";
    permission java.util.PropertyPermission "java.vendor", "read";
    //omitted for readability
    // Precompiled JSPs need access to this package.
    permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime";
    permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime.*";

    permission java.lang.RuntimePermission "accessDeclaredMembers";
};

Speichern Sie es, starten Sie Tomcat und Done neu.