To demonstrate this problem, i have created a subclass of FileLogger with the start() method overriden to print a stack whenever it is called. The result is this...
java.lang.Exception: Start has been called at org.antares.tomcat.TomcatService$TestFileLogger.start(TomcatService.java:312 ) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1113) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:502) at org.apache.catalina.startup.Embedded.start(Embedded.java:1026) at org.antares.tomcat.TomcatService.start(TomcatService.java:236) at org.antares.tomcat.TomcatService.main(TomcatService.java:324) java.lang.Exception: Start has been called at org.antares.tomcat.TomcatService$TestFileLogger.start(TomcatService.java:312 ) at org.apache.catalina.core.StandardContext.start(StandardContext.java:3926) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1127) at org.apache.catalina.core.StandardHost.start(StandardHost.java:792) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1127) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:502) at org.apache.catalina.startup.Embedded.start(Embedded.java:1026) at org.antares.tomcat.TomcatService.start(TomcatService.java:236) at org.antares.tomcat.TomcatService.main(TomcatService.java:324)
As you can see, there is only one call to Embedded.start but this results in two calls attempting to start the logger.
The second call causes the Logger to throw a LifecycleException and the server fails to start. The only solution i can find so far is not adding the logger in the first place.
This wasnt a problem in 4.1.27.
Your logger seems associated with both the host and the engine (and it gets started by both, of course). Setting the logger to the engine only would work ok (it's not your fault, Embedded does it for you in createContext, which is incorrect; somehow, it doesn't do it in createHost).
Can you test and debug this further ?
Remy
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]