jolly28 opened a new issue, #2414:
URL: https://github.com/apache/logging-log4j2/issues/2414

   ## Description
   My java:17.0.5 Application is based on struts2-core:6.3.0.2 and I am using 
the log4j-api:2.17.2 as the dependency and the application is running fine. 
   When log4j-api uplifted to 2.20.0 (supported by struts), I am getting below 
exception
   
   ## Configuration
   
   **Version:** 2.20.0 (also in 2.23.1)
   
   **Operating system:** OracleLinux 8.9
   
   **JDK:**17.0.5
   
   ## Logs
   
   ```
   SEVERE [main] org.apache.catalina.core.StandardContext.filterStart Exception 
starting filter [Struts2Filter]
           java.lang.NoClassDefFoundError: Could not initialize class 
org.apache.logging.log4j.util.PropertiesUtil
                   at 
org.apache.logging.log4j.status.StatusLogger.<clinit>(StatusLogger.java:77)
                   at 
org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:61)
                   at 
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.<clinit>(StrutsPrepareAndExecuteFilter.java:49)
                   at 
java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
 Method)
                   at 
java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
                   at 
java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
                   at 
java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
                   at 
java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
                   at 
org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:143)
                   at 
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:242)
                   at 
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:97)
                   at 
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4311)
                   at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4940)
                   at 
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
                   at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:683)
                   at 
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:658)
                   at 
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:661)
                   at 
org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1014)
                   at 
org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1866)
                   at 
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
                   at 
java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
                   at 
org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                   at 
java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123)
                   at 
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:816)
                   at 
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:468)
                   at 
org.apache.catalina.startup.HostConfig.start(HostConfig.java:1584)
                   at 
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:312)
                   at 
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114)
                   at 
org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402)
                   at 
org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345)
                   at 
org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:893)
                   at 
org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:794)
                   at 
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
                   at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332)
                   at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322)
                   at 
java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
                   at 
org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                   at 
java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145)
                   at 
org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866)
                   at 
org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:248)
                   at 
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
                   at 
org.apache.catalina.core.StandardService.startInternal(StandardService.java:433)
                   at 
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
                   at 
org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:925)
                   at 
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
                   at 
org.apache.catalina.startup.Catalina.start(Catalina.java:735)
                   at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                   at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
                   at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                   at java.base/java.lang.reflect.Method.invoke(Method.java:568)
                   at 
org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
                   at 
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
           
   
   Caused by: java.lang.ExceptionInInitializerError: Exception 
java.lang.IllegalArgumentException: key can't be empty [in thread "main"]
                   at java.base/java.lang.System.checkKey(System.java:1049)
                   at java.base/java.lang.System.getProperty(System.java:912)
                   at 
org.apache.logging.log4j.util.SystemPropertiesPropertySource.getProperty(SystemPropertiesPropertySource.java:96)
                   at 
org.apache.logging.log4j.util.SystemPropertiesPropertySource.containsProperty(SystemPropertiesPropertySource.java:104)
                   at 
org.apache.logging.log4j.util.PropertiesUtil$Environment.lambda$null$2(PropertiesUtil.java:498)
                   at java.base/java.lang.Iterable.forEach(Iterable.java:75)
                   at 
org.apache.logging.log4j.util.PropertiesUtil$Environment.lambda$reload$3(PropertiesUtil.java:497)
                   at 
java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
                   at 
java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
                   at 
java.base/java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1707)
                   at 
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
                   at 
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
                   at 
java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
                   at 
java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
                   at 
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
                   at 
java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
                   at 
org.apache.logging.log4j.util.PropertiesUtil$Environment.reload(PropertiesUtil.java:494)
                   at 
org.apache.logging.log4j.util.PropertiesUtil$Environment.<init>(PropertiesUtil.java:469)
                   at 
org.apache.logging.log4j.util.PropertiesUtil$Environment.<init>(PropertiesUtil.java:444)
                   at 
org.apache.logging.log4j.util.PropertiesUtil.<init>(PropertiesUtil.java:88)
                   at 
org.apache.logging.log4j.util.PropertiesUtil.<init>(PropertiesUtil.java:80)
                   at 
org.apache.logging.log4j.util.PropertiesUtil.<clinit>(PropertiesUtil.java:56)
                   at 
org.apache.logging.log4j.util.Constants.<clinit>(Constants.java:30)
                   at 
org.apache.logging.log4j.spi.AbstractLogger.createClassForProperty(AbstractLogger.java:203)
                   at 
org.apache.logging.log4j.spi.AbstractLogger.<clinit>(AbstractLogger.java:92)
                   ... 51 more
   ```
   
   ## Reproduction
   For my case just uplifting the log4j-api from 2.17.2 to 2.20.0 is causing 
the exception to occur
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to