[ 
https://issues.apache.org/jira/browse/LOG4J2-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14581448#comment-14581448
 ] 

Gary Gregory commented on LOG4J2-1035:
--------------------------------------

Thank you for the confirmation.

Please verify the code in Git master for the original issue and close the 
ticket.

If there is more on this topic in general, let's continue in a new ticket.

> Log4j2 tries to SystemClassLoader when running on Google AppEngine
> ------------------------------------------------------------------
>
>                 Key: LOG4J2-1035
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1035
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Configurators
>    Affects Versions: 2.3
>         Environment: Google AppEngine
>            Reporter: Lukasz Lenart
>             Fix For: 2.4
>
>         Attachments: scl.patch
>
>
> Apache Struts recently switched to Log4j2 as a base logging layer and this 
> broke deployments to Google AppEngine, below is the exception:
> {noformat}
> Uncaught exception from servlet
> java.lang.ExceptionInInitializerError
>       at 
> org.apache.logging.log4j.status.StatusLogger.<clinit>(StatusLogger.java:55)
>       at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:56)
>       at 
> org.apache.struts2.tiles.StrutsTilesListener.<clinit>(StrutsTilesListener.java:50)
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>       at java.lang.Class.newInstance(Class.java:375)
>       at 
> org.mortbay.jetty.webapp.WebXmlConfiguration.newListenerInstance(WebXmlConfiguration.java:650)
>       at 
> org.mortbay.jetty.webapp.WebXmlConfiguration.initListener(WebXmlConfiguration.java:631)
>       at 
> org.mortbay.jetty.webapp.WebXmlConfiguration.initWebXmlElement(WebXmlConfiguration.java:368)
>       at 
> org.mortbay.jetty.webapp.WebXmlConfiguration.initialize(WebXmlConfiguration.java:289)
>       at 
> org.mortbay.jetty.webapp.WebXmlConfiguration.configure(WebXmlConfiguration.java:222)
>       at 
> org.mortbay.jetty.webapp.WebXmlConfiguration.configureWebApp(WebXmlConfiguration.java:180)
>       at 
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1247)
>       at 
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
>       at 
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
>       at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>       at 
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:199)
>       at 
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:174)
>       at 
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:134)
>       at 
> com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:527)
>       at 
> com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:437)
>       at 
> com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:444)
>       at 
> com.google.tracing.CurrentContext.runInContext(CurrentContext.java:230)
>       at 
> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:308)
>       at 
> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:300)
>       at 
> com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:441)
>       at 
> com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251)
>       at java.lang.Thread.run(Thread.java:745)
> Caused by: java.security.AccessControlException: access denied 
> ("java.lang.RuntimePermission" "getClassLoader")
>       at 
> java.security.AccessControlContext.checkPermission(AccessControlContext.java:382)
>       at 
> java.security.AccessController.checkPermission(AccessController.java:572)
>       at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
>       at 
> com.google.apphosting.runtime.security.CustomSecurityManager.checkPermission(CustomSecurityManager.java:56)
>       at 
> java.lang.ClassLoader.checkClassLoaderPermission(ClassLoader.java:1606)
>       at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1525)
>       at 
> org.apache.logging.log4j.util.LoaderUtil.findUrlResources(LoaderUtil.java:192)
>       at 
> org.apache.logging.log4j.util.LoaderUtil.findResources(LoaderUtil.java:183)
>       at 
> org.apache.logging.log4j.util.PropertiesUtil.<init>(PropertiesUtil.java:90)
>       at 
> org.apache.logging.log4j.util.PropertiesUtil.<clinit>(PropertiesUtil.java:36)
>       ... 30 more
> {noformat}
> Looks like it tries to read a file from filesystem which is prohibited.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to