2012-05-11 67 views
0

當亞姆時僅僅通過這個網址打開Tomcat的7.0管理控制檯,IAM變得異常下面的AccessControlException開放的Tomcat 7的管理控制檯

http://localhost:8085/ 

java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessClassInPackage.org.apache.jasper") 
    java.security.AccessControlContext.checkPermission(Unknown Source) 
    java.security.AccessController.checkPermission(Unknown Source) 
    java.lang.SecurityManager.checkPermission(Unknown Source) 
    java.lang.SecurityManager.checkPackageAccess(Unknown Source) 
    sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    java.lang.ClassLoader.loadClass(Unknown Source) 
    java.lang.ClassLoader.loadClass(Unknown Source) 
    org.apache.jasper.servlet.JspServletWrapper.<init>(JspServletWrapper.java:120) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    java.lang.reflect.Method.invoke(Unknown Source) 
    org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:274) 
    org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:271) 
    java.security.AccessController.doPrivileged(Native Method) 
    javax.security.auth.Subject.doAsPrivileged(Unknown Source) 
    org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:306) 
    org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:166) 

請任何人都可以提出如何解決上述問題。

+0

您應該準確描述您正在使用的Tomcat版本,安裝方式以及它在哪個操作系統上運行。 – Pidster

回答

1

請勿使用安全管理器運行或恢復默認權限集(標準安裝中的$ CATALINA_BASE/conf/catalina.policy)。默認的Tomcat安裝可以在沒有安全管理器的情況下工作。

+0

如何使用默認屬性運行。我的意思是,我需要更改哪些內容以及需要更改哪些內容,以便使用默認屬性運行tomcat – developer

+0

從乾淨安裝中複製catalina.policy –

0

更改權限在文件中你的webapp /etc/tomcat6/policy.d/04webapps.policy

加入這個 - >

grant codeBase "file:${catalina.base}/webapps/<name of your webapp>/-" { 
    permission java.lang.reflect.ReflectPermission "suppressAccessChecks"; 
    permission java.security.AllPermission; 
}; 

它爲我工作。希望能幫助到你!