Le 24 mai 2017 15:49, "JumpStart" <[email protected]> a
écrit :
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
This is the embedded management of http component for openejb-http
- 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?
You surely need to set a custom WebAppBuilder if you use a custom http
layer (not default openejb-http one) or just drop jetty if it is an option.
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