You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2014/09/19 15:14:10 UTC

[Bug 56776] java.security.AccessControlException in ClassLoaderLogManager on ClassLoader.getParent() call

https://issues.apache.org/bugzilla/show_bug.cgi?id=56776

--- Comment #3 from Violeta Georgieva <vi...@apache.org> ---
Hi,

I tried the following:
- Configured log4j to output Tomcat's internal logging as described here [1]
- Deleted the content of the logging.properties
- Started Tomcat with security manager and -Djava.security.debug=all

The error that I received was:

access: access denied (java.io.FilePermission \C:\tc7.0.x\output\build\lib\
log4j.properties read)
java.lang.Exception: Stack trace
        at java.lang.Thread.dumpStack(Thread.java:1249)
        at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:364)
        at
java.security.AccessController.checkPermission(AccessController.java:549)
        at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
        at java.lang.SecurityManager.checkRead(SecurityManager.java:871)
        at sun.misc.URLClassPath.check(URLClassPath.java:416)
        at sun.misc.URLClassPath.checkURL(URLClassPath.java:390)
        at java.net.URLClassLoader.findResource(URLClassLoader.java:389)
        at java.lang.ClassLoader.getResource(ClassLoader.java:1002)
        at org.apache.log4j.helpers.Loader.getResource(Loader.java:110)
        at org.apache.log4j.LogManager.<clinit>(LogManager.java:109)
        at org.apache.log4j.Logger.getLogger(Logger.java:104)
        at
org.apache.juli.logging.impl.Log4JLogger.getLogger(Log4JLogger.java:262)
        at
org.apache.juli.logging.impl.Log4JLogger.<init>(Log4JLogger.java:108)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at
org.apache.juli.logging.impl.LogFactoryImpl.createLogFromClass(LogFactoryImpl.java:1025)
        at
org.apache.juli.logging.impl.LogFactoryImpl.discoverLogImplementation(LogFactoryImpl.java:844)
        at
org.apache.juli.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:541)
        at
org.apache.juli.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:292)
        at
org.apache.juli.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:269)
        at org.apache.juli.logging.LogFactory.getLog(LogFactory.java:657)
        at org.apache.catalina.startup.Catalina.<clinit>(Catalina.java:925)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at java.lang.Class.newInstance0(Class.java:355)
        at java.lang.Class.newInstance(Class.java:308)
        at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:238)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)


Then I added the following to the catalina.policy:

grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar" {
        ...
        permission java.io.FilePermission
        
"${catalina.base}${file.separator}lib${file.separator}log4j.properties",
"read";
        ...

Then I restarted Tomcat and everything was OK.


I cannot reproduce the exception.

Regards
Violeta

[1] http://tomcat.apache.org/tomcat-7.0-doc/logging.html#Using_Log4j

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org