I’m upgrading from 4.5.2 to 7.0.3. Now my ServletContextListeners (which are 
declared in web.xml) are being started twice. 

I’ve forced a stacktrace inside the ServletContextListener (they all have a 
superclass of AbstractDaemon) and I see that:
- call 1 is from OpenEJB’s LightweightWebAppBuilder, and 
- call 2 is from Jetty’s ContextHandler. 
I think call 1 is a new thing since 4.6. Is there a Java EE 6 thing going on 
here? Do I need to turn off something in my ageing Jetty 6.1.24?

Call 1:

java.lang.IllegalStateException: Temporary, to help debug OpenEJB upgrade. 
Repeating Bookings Populater
        at 
com.goxpro.xpro.web.daemons.AbstractDaemon.contextInitialized(AbstractDaemon.java:51)
        at 
org.apache.openejb.web.LightweightWebAppBuilder$1.run(LightweightWebAppBuilder.java:191)
        at 
org.apache.openejb.web.LightweightWebAppBuilder.switchServletContextIfNeeded(LightweightWebAppBuilder.java:399)
        at 
org.apache.openejb.web.LightweightWebAppBuilder.deployWebApps(LightweightWebAppBuilder.java:188)
        at 
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:997)
        at 
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:718)
        at 
org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:596)
        at 
org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:484)
        at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:150)
        at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:66)
        at org.apache.openejb.OpenEJB.init(OpenEJB.java:307)
        at org.apache.openejb.OpenEJB.init(OpenEJB.java:278)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at 
org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
        at 
org.apache.openejb.core.LocalInitialContextFactory.init(LocalInitialContextFactory.java:99)
        at 
org.apache.openejb.core.LocalInitialContextFactory.init(LocalInitialContextFactory.java:63)
        at 
org.apache.openejb.core.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:47)
        at 
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)
        at 
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
        at javax.naming.InitialContext.init(InitialContext.java:244)
        at javax.naming.InitialContext.<init>(InitialContext.java:192)
        at org.mortbay.jetty.plus.naming.NamingEntry.save(NamingEntry.java:191)
        at org.mortbay.jetty.plus.naming.NamingEntry.<init>(NamingEntry.java:58)
        at org.mortbay.jetty.plus.naming.EnvEntry.<init>(EnvEntry.java:46)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
        at org.mortbay.xml.XmlConfiguration.newObj(XmlConfiguration.java:608)
        at org.mortbay.xml.XmlConfiguration.configure(XmlConfiguration.java:256)
        at org.mortbay.xml.XmlConfiguration.configure(XmlConfiguration.java:214)
        at 
org.mortbay.jetty.deployer.ContextDeployer.createContext(ContextDeployer.java:369)
        at 
org.mortbay.jetty.deployer.ContextDeployer.deploy(ContextDeployer.java:263)
        at 
org.mortbay.jetty.deployer.ContextDeployer.access$000(ContextDeployer.java:67)
        at 
org.mortbay.jetty.deployer.ContextDeployer$ScannerListener.fileAdded(ContextDeployer.java:89)
        at org.mortbay.util.Scanner.reportAddition(Scanner.java:410)
        at org.mortbay.util.Scanner.reportDifferences(Scanner.java:324)
        at org.mortbay.util.Scanner.scan(Scanner.java:280)
        at 
org.mortbay.jetty.deployer.ContextDeployer.doStart(ContextDeployer.java:327)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at org.mortbay.jetty.Server.doStart(Server.java:201)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at com.goxpro.xpro.web.RunJetty.main(RunJetty.java:84)
 WARN [main] (AbstractDaemon.java:58) - Before schedule Repeating Bookings 
Populater
 WARN [main] (AbstractDaemon.java:60) - After  schedule Repeating Bookings 
Populater

Call 2:

java.lang.IllegalStateException: Temporary, to help debug OpenEJB upgrade. 
Repeating Bookings Populater
        at 
com.goxpro.xpro.web.daemons.AbstractDaemon.contextInitialized(AbstractDaemon.java:51)
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
        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 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
        at org.mortbay.jetty.Server.doStart(Server.java:224)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at com.goxpro.xpro.web.RunJetty.main(RunJetty.java:84)
 WARN [main] (AbstractDaemon.java:58) - Before schedule Repeating Bookings 
Populater
 WARN [main] (AbstractDaemon.java:60) - After  schedule Repeating Bookings 
Populater

Geoff

Reply via email to