Search code examples
javatomcatconfigurationtomcat8

Failed to start component [StandardEngine[Catalina].StandardHost[localhost]


When trying to start tomcat I get this error. What could be the cause of this?

I've go through a bunch of similar posts and I can't find anything.

I am using Apache Tomcat v8.0 and JRE 1.8.0

    java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/ocmsLatest]]
    at java.util.concurrent.FutureTask.report(Unknown Source)
    at java.util.concurrent.FutureTask.get(Unknown Source)
    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(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/ocmsLatest]]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
    ... 6 more
Caused by: java.lang.SecurityException: SHA1 digest error for javax/activation/MimeTypeParameterList.class
    at sun.security.util.ManifestEntryVerifier.verify(Unknown Source)
    at java.util.jar.JarVerifier.processEntry(Unknown Source)
    at java.util.jar.JarVerifier.update(Unknown Source)
    at java.util.jar.JarVerifier$VerifierStream.read(Unknown Source)
    at java.io.InputStream.skip(Unknown Source)
    at java.io.BufferedInputStream.skip(Unknown Source)
    at java.io.DataInputStream.skipBytes(Unknown Source)
    at org.apache.tomcat.util.bcel.classfile.Utility.skipFully(Utility.java:61)
    at org.apache.tomcat.util.bcel.classfile.Utility.swallowAttribute(Utility.java:86)
    at org.apache.tomcat.util.bcel.classfile.Utility.swallowFieldOrMethod(Utility.java:76)
    at org.apache.tomcat.util.bcel.classfile.ClassParser.readMethods(ClassParser.java:234)
    at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:94)
    at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2042)
    at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1988)
    at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1958)
    at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1912)
    at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1157)
    at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:779)
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:306)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5202)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
    ... 6 more

Dec 29, 2016 3:34:43 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(Unknown Source)
    at java.util.concurrent.FutureTask.get(Unknown Source)
    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(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    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(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
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

Dec 29, 2016 3:34:43 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(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    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

Dec 29, 2016 3:34:43 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["http-nio-8080"]
Dec 29, 2016 3:34:43 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["ajp-nio-8009"]
Dec 29, 2016 3:34:43 PM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Catalina
Dec 29, 2016 3:34:43 PM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["http-nio-8080"]
Dec 29, 2016 3:34:43 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(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)

Dec 29, 2016 3:34:43 PM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["ajp-nio-8009"]
Dec 29, 2016 3:34:43 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(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)

And Jar Files:

activation
antlr
asm-3.1
asm-commons-3.3
asm-tree-3.3
bcprov-jdk15on-1.47
c3p0-0.9.1.2
commons-beanutils-1.7.0
commons-collections-3.1
commons-digester
commons-io-1.3.2
commons-lang-2.3
commons-logging-1.0.4
commons-validator
displaytag-1.2
displaytag-export-poi-1.2
displaytag-portlet-1.2
dom4j-1.6
eclipselink-2.0.2
eclipselink-javax.persistence-2.0
freemarker
freemarker-2.3.15
gcm-server-1.0.2
imgscalr-lib-4.2
iText-2.1.7
jackson-annotations-2.2.3
jackson-core-2.2.3
jackson-core-asl-1.9.2
jackson-databind-2.2.3
jackson-jaxrs-1.9.2
jackson-mapper-asl-1.9.2
jackson-xc-1.9.2
jasper-compiler-jdt
jasperreports-4.1.1
javapns-2.2.1
javassist
jcommon-1.0.17
jersey-apache-client-1.18
jersey-atom-abdera-1.18
jersey-client-1.18
jersey-core-1.18
jersey-guice-1.18
jersey-json-1.18
jersey-multipart-1.18
jersey-server-1.18
jersey-servlet-1.18
jersey-simple-server-1.18
jersey-spring-1.18
jettison-1.1
jfreechart-1.0.14
json-simple-1.1.1
jsr311-api-1.1.1
jxl
log4j-1.2.13
mail
mimepull-1.4
mysql-connector-java-5.0.5
oauth-client-1.18
oauth-server-1.18
oauth-signature-1.18
ognl-2.7.3
poi-3.7
poi-3.8-20120326
poi-3.11-beta2
poi-ooxml-3.11-beta2
poi-ooxml-schemas-3.11-beta2
quartz-all-2.1.6
recaptcha4j-0.0.7
slf4j-api-1.6.1
slf4j-log4j12-1.6.1
struts2-core-2.1.8.1
struts2-dojo-plugin-2.2.3
struts2-fullhibernatecore-plugin-1.4-GA
struts2-jasperreports-plugin-2.2.3
struts2-jquery-grid-plugin-3.2.1
struts2-jquery-plugin-3.2.1
struts2-json-plugin-2.2.3
struts2-tiles-plugin-2.2.3
tiles-api-2.0.6
tiles-core-2.0.6
tiles-jsp-2.0.6
xmlbeans-2.6.0
xwork-core-2.1.6

Solution

  • Tomcat indeed has problems (See bug #60087) with verifying jar file signatures.

    Solutions:

    • Update Apache Tomcat version.

    • You might verify signature of files manually, if you read Verifying Signed JAR Files, before deploying app to the Tomcat server.

    • You might also have corrupted jar files downloaded. You should always download from known sources or repositories.

    • You can also download along with jar file the digest signature files and verify contents of the file with OS utility.

    • Don't use malicious sites hosted jar files for your download.

    • Use antivirus to scan for viruses inside jar and verify signature. Some antivirus's have bugs and you should not use its result report for final decision about file contents. E.g. Error: "Invalid sha1 signature file digest for" when verifying a Jar file.