maventomcatpom.xmleclipse-luna

SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException


I'm new to Eclipse, Tomcat and the web service development. I'm just trying to learn the basics. But, unfortunately I've come across an issue which I'm not able to solve even after following the instructions from the various links from internet. I've tried the following approaches :

PS:

Also, I'm posting the error while running the project on server :

> 
> Jul 25, 2016 6:27:32 PM
> org.apache.tomcat.util.digester.SetPropertiesRule begin WARNING:
> [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting
> property 'source' to 'org.eclipse.jst.jee.server:RESTJerseyExample'
> did not find a matching property. Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: Server
> version:        Apache Tomcat/8.0.36 Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: Server
> built:          Jun 9 2016 13:55:50 UTC Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: Server
> number:         8.0.36.0 Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: OS Name:  
> Mac OS X Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: OS
> Version:            10.11.5 Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO:
> Architecture:          x86_64 Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: Java Home:
> /Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home/jre
> Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: JVM
> Version:           1.8.0_92-b14 Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: JVM
> Vendor:            Oracle Corporation Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO:
> CATALINA_BASE:        
> /Users/easiembedded/Documents/workspace/Eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0
> Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO:
> CATALINA_HOME:         /usr/local/apache-tomcat-8.0.36 Jul 25, 2016
> 6:27:32 PM org.apache.catalina.startup.VersionLoggerListener log INFO:
> Command line argument:
> -Dcatalina.base=/Users/easiembedded/Documents/workspace/Eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0
> Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: Command
> line argument: -Dcatalina.home=/usr/local/apache-tomcat-8.0.36 Jul 25,
> 2016 6:27:32 PM org.apache.catalina.startup.VersionLoggerListener log
> INFO: Command line argument:
> -Dwtp.deploy=/Users/easiembedded/Documents/workspace/Eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps
> Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.VersionLoggerListener log INFO: Command
> line argument:
> -Djava.endorsed.dirs=/usr/local/apache-tomcat-8.0.36/endorsed Jul 25, 2016 6:27:32 PM org.apache.catalina.startup.VersionLoggerListener log
> INFO: Command line argument: -Dfile.encoding=UTF-8 Jul 25, 2016
> 6:27:32 PM org.apache.catalina.core.AprLifecycleListener
> lifecycleEvent INFO: The APR based Apache Tomcat Native library which
> allows optimal performance in production environments was not found on
> the java.library.path:
> /Users/easiembedded/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
> Jul 25, 2016 6:27:32 PM org.apache.coyote.AbstractProtocol init INFO:
> Initializing ProtocolHandler ["http-nio-8080"] Jul 25, 2016 6:27:32 PM
> org.apache.tomcat.util.net.NioSelectorPool getSharedSelector INFO:
> Using a shared selector for servlet write/read Jul 25, 2016 6:27:32 PM
> org.apache.coyote.AbstractProtocol init INFO: Initializing
> ProtocolHandler ["ajp-nio-8009"] Jul 25, 2016 6:27:32 PM
> org.apache.tomcat.util.net.NioSelectorPool getSharedSelector INFO:
> Using a shared selector for servlet write/read Jul 25, 2016 6:27:32 PM
> org.apache.catalina.startup.Catalina load INFO: Initialization
> processed in 486 ms Jul 25, 2016 6:27:32 PM
> org.apache.catalina.core.StandardService startInternal INFO: Starting
> service Catalina Jul 25, 2016 6:27:32 PM
> org.apache.catalina.core.StandardEngine startInternal INFO: Starting
> Servlet Engine: Apache Tomcat/8.0.36 Jul 25, 2016 6:27:32 PM
> org.apache.catalina.core.ContainerBase startInternal SEVERE: A child
> container failed during start java.util.concurrent.ExecutionException:
> org.apache.catalina.LifecycleException: Failed to start component
> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/RESTJerseyExample]]
>   at java.util.concurrent.FutureTask.report(FutureTask.java:122)  at
> java.util.concurrent.FutureTask.get(FutureTask.java:192)  at
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:915)
>   at
> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407)
>   at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397)
>   at java.util.concurrent.FutureTask.run(FutureTask.java:266)     at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   at java.lang.Thread.run(Thread.java:745) Caused by:
> org.apache.catalina.LifecycleException: Failed to start component
> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/RESTJerseyExample]]
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
>   ... 6 more Caused by: org.apache.catalina.LifecycleException: Failed
> to start component
> [org.apache.catalina.webresources.StandardRoot@3aa1d912]  at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
>   at
> org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4958)
>   at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5088)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   ... 6 more Caused by: org.apache.catalina.LifecycleException: Failed
> to initialize component
> [org.apache.catalina.webresources.JarResourceSet@25268c7e]    at
> org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:136)
>   at
> org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:699)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   ... 9 more Caused by: java.lang.IllegalArgumentException:
> java.util.zip.ZipException: invalid LOC header (bad signature)    at
> org.apache.catalina.webresources.JarResourceSet.initInternal(JarResourceSet.java:139)
>   at
> org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
>   ... 12 more Caused by: java.util.zip.ZipException: invalid LOC header
> (bad signature)   at java.util.zip.ZipFile.read(Native Method)    at
> java.util.zip.ZipFile.access$1400(ZipFile.java:60)    at
> java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:717)   at
> java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:419)
>   at
> java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
>   at sun.misc.IOUtils.readFully(IOUtils.java:65)  at
> java.util.jar.JarFile.getBytes(JarFile.java:425)  at
> java.util.jar.JarFile.getManifestFromReference(JarFile.java:193)  at
> java.util.jar.JarFile.getManifest(JarFile.java:180)   at
> org.apache.catalina.webresources.JarResourceSet.initInternal(JarResourceSet.java:137)
>   ... 13 more
> 
> Jul 25, 2016 6:27:32 PM org.apache.catalina.core.ContainerBase
> startInternal SEVERE: A child container failed during start
> java.util.concurrent.ExecutionException:
> org.apache.catalina.LifecycleException: Failed to start component
> [StandardEngine[Catalina].StandardHost[localhost]]    at
> java.util.concurrent.FutureTask.report(FutureTask.java:122)   at
> java.util.concurrent.FutureTask.get(FutureTask.java:192)  at
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:915)
>   at
> org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   at
> org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   at
> org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:787)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   at org.apache.catalina.startup.Catalina.start(Catalina.java:629)    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:498)     at
> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)   at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485) Caused
> by: org.apache.catalina.LifecycleException: Failed to start component
> [StandardEngine[Catalina].StandardHost[localhost]]    at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
>   at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407)
>   at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397)
>   at java.util.concurrent.FutureTask.run(FutureTask.java:266)     at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   at java.lang.Thread.run(Thread.java:745) Caused by:
> org.apache.catalina.LifecycleException: A child container failed
> during start  at
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:923)
>   at
> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   ... 6 more
> 
> Jul 25, 2016 6:27:32 PM org.apache.catalina.startup.Catalina start
> SEVERE: The required Server component failed to start so Tomcat is
> unable to start. org.apache.catalina.LifecycleException: Failed to
> start component [StandardServer[8005]]    at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
>   at org.apache.catalina.startup.Catalina.start(Catalina.java:629)    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:498)     at
> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)   at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485) Caused
> by: org.apache.catalina.LifecycleException: Failed to start component
> [StandardService[Catalina]]   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
>   at
> org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:787)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   ... 7 more Caused by: org.apache.catalina.LifecycleException: Failed
> to start component [StandardEngine[Catalina]]     at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
>   at
> org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   ... 9 more Caused by: org.apache.catalina.LifecycleException: A child
> container failed during start     at
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:923)
>   at
> org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
>   at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
>   ... 11 more
> 
> Jul 25, 2016 6:27:32 PM org.apache.coyote.AbstractProtocol pause INFO:
> Pausing ProtocolHandler ["http-nio-8080"] Jul 25, 2016 6:27:32 PM
> org.apache.coyote.AbstractProtocol pause INFO: Pausing ProtocolHandler
> ["ajp-nio-8009"] Jul 25, 2016 6:27:32 PM
> org.apache.catalina.core.StandardService stopInternal INFO: Stopping
> service Catalina Jul 25, 2016 6:27:32 PM
> org.apache.coyote.AbstractProtocol destroy INFO: Destroying
> ProtocolHandler ["http-nio-8080"] Jul 25, 2016 6:27:32 PM
> org.apache.coyote.AbstractProtocol destroy SEVERE: Failed to destroy
> end point associated with ProtocolHandler ["http-nio-8080"]
> java.lang.NullPointerException    at
> org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:316)
>   at
> org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:492)
>   at
> org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:821)
>   at
> org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:534)
>   at
> org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
>   at
> org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
>   at
> org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)
>   at
> org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
>   at
> org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:877)
>   at
> org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
>   at org.apache.catalina.startup.Catalina.start(Catalina.java:633)    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:498)     at
> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)   at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
> 
> Jul 25, 2016 6:27:32 PM org.apache.coyote.AbstractProtocol destroy
> INFO: Destroying ProtocolHandler ["ajp-nio-8009"] Jul 25, 2016 6:27:32
> PM org.apache.coyote.AbstractProtocol destroy SEVERE: Failed to
> destroy end point associated with ProtocolHandler ["ajp-nio-8009"]
> java.lang.NullPointerException    at
> org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:316)
>   at
> org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:492)
>   at
> org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:821)
>   at
> org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:534)
>   at
> org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
>   at
> org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
>   at
> org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)
>   at
> org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
>   at
> org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:877)
>   at
> org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
>   at org.apache.catalina.startup.Catalina.start(Catalina.java:633)    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:498)     at
> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)   at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)

Any help would be really appreciated.

Thank You!


Solution

  • Quick Answer :

    Probably, I was using the wrong servlet class in my web.xml which depends on the jersey archive version being used. I'm using Jersey 2.x and the web.xml was having the following servlet url, which was causing the error :

    <servlet>
        <servlet-name>Jersey Web Application</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    

    Then I replaced the above with the following, which resolved the error :

    <servlet>
        <servlet-name>Jersey Web Application</servlet-name>
        <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>