[ https://issues.apache.org/jira/browse/LOG4J2-359?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13755562#comment-13755562 ]
Ralph Goers edited comment on LOG4J2-359 at 8/31/13 6:21 PM: ------------------------------------------------------------- I still don't think this is correct. In a servlet 3.0 environment it would still be valid for the user to specify a servlet context listener in their web.xml would it not? In that case the problem still exists. I also have to say that the more I think about this the less comfortable I am in having the initializer run automagically in a servlet 3.0 container. I am thinking perhaps the user should have to provide the initializer instead of us. If the log4j jar is outside the WEB-INF/lib of the application then the log4j initializer's onStartup method will be invoked when every new application is started. This is likely to be undesirable. Does Spring automatically start initialization just because the spring jars are present in a servlet 3.0 environment? was (Author: ralph.go...@dslextreme.com): I still don't think this is correct. In a servlet 3.0 environment it would still be valid for the user to specify a servlet context listener in their web.xml would it not? In that case the problem still exists. I also have to say that the more I think about this the less comfortable I am in having the initializer run automagically in a servlet 3.0 container. I am thinking perhaps the user should have to provide the initializer instead of us. Does Spring automatically start initialization just because the spring jars are present in a servlet 3.0 environment? > Log4jServletContextListener does not work on Weblogic 12.1.1 (12c) with > web-app version "2.5" > --------------------------------------------------------------------------------------------- > > Key: LOG4J2-359 > URL: https://issues.apache.org/jira/browse/LOG4J2-359 > Project: Log4j 2 > Issue Type: Bug > Affects Versions: 2.0-beta8 > Reporter: Abhinav Shah > Assignee: Nick Williams > Fix For: 2.0-beta9 > > Attachments: LOG4J2-359.patch, Log4jServletContainerInitializer.java, > Log4jServletContainerInitializerTest.java > > > I have Weblogic 12c running. My web-app is version "2.5". > Following is a snippet from my web.xml > {code:xml} > <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns="http://java.sun.com/xml/ns/javaee" > xsi:schemaLocation="http://java.sun.com/xml/ns/javaee > http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" > id="WebApp_ID" version="2.5"> > <display-name>pec-service</display-name> > <context-param> > <param-name>log4jConfiguration</param-name> > <param-value>file:/C:/log4j/dev.log4j.xml</param-value> > </context-param> > <listener> > > <listener-class>org.apache.logging.log4j.core.web.Log4jServletContextListener</listener-class> > > </listener> > <filter> > <filter-name>log4jServletFilter</filter-name> > > <filter-class>org.apache.logging.log4j.core.web.Log4jServletFilter</filter-class> > > </filter> > <filter-mapping> > <filter-name>log4jServletFilter</filter-name> > <url-pattern>/*</url-pattern> > <dispatcher>REQUEST</dispatcher> > <dispatcher>FORWARD</dispatcher> > <dispatcher>INCLUDE</dispatcher> > <dispatcher>ERROR</dispatcher> > </filter-mapping> > > </web-app> > {code} > However, on my server startup I am getting the following error - > {code} > <Aug 16, 2013 3:12:32 PM PDT> <Warning> <HTTP> <BEA-101162> <User defined > listener org.apache.logging.log4j.core.web.Log4jServletContextListener > failed: java.lang.IllegalStateException: Context destroyed before it was > initialized.. > java.lang.IllegalStateException: Context destroyed before it was initialized. > at > org.apache.logging.log4j.core.web.Log4jServletContextListener.contextDestroyed(Log4jServletContextListener.java:51) > at > weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:583) > at > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) > at > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) > at > weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57) > Truncated. see log file for complete stacktrace > > > <Aug 16, 2013 3:12:32 PM PDT> <Error> <Deployer> <BEA-149265> <Failure > occurred in the execution of deployment request with ID "1376691143681" for > task "2". Error is: "weblogic.application.ModuleException" > weblogic.application.ModuleException > at > weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1708) > at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:781) > at > weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:213) > at > weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:208) > at > weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35) > Truncated. see log file for complete stacktrace > Caused By: java.lang.NullPointerException > at > org.apache.logging.log4j.core.web.Log4jServletContainerInitializer.onStartup(Log4jServletContainerInitializer.java:44) > at > weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1271) > at > weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1229) > at > weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1726) > at > weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2740) > Truncated. see log file for complete stacktrace > > > <Aug 16, 2013 3:12:32 PM PDT> <Error> <Deployer> <BEA-149202> <Encountered an > exception while attempting to commit the 7 task for the application > "_auto_generated_ear_".> > <Aug 16, 2013 3:12:32 PM PDT> <Warning> <Deployer> <BEA-149004> <Failures > were detected while initiating start task for application > "_auto_generated_ear_".> > <Aug 16, 2013 3:12:32 PM PDT> <Warning> <Deployer> <BEA-149078> <Stack trace > for message 149004 > weblogic.application.ModuleException > at > weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1708) > at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:781) > at > weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:213) > at > weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:208) > at > weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35) > Truncated. see log file for complete stacktrace > Caused By: java.lang.NullPointerException > at > org.apache.logging.log4j.core.web.Log4jServletContainerInitializer.onStartup(Log4jServletContainerInitializer.java:44) > at > weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1271) > at > weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1229) > at > weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1726) > at > weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2740) > Truncated. see log file for complete stacktrace > {code} > If I remove the listener & the filter, it works fine. > {color:red} > I did some research and found that even though the web-app is version "2.5", > the {code}Log4jServletContainerInitializer{code} is getting invoked. > {color} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org