无法启动组件[StandardEngine [Catalina] .StandardHost [localhost]

时间:2016-12-29 10:33:02

标签: java tomcat configuration tomcat8

尝试启动tomcat时出现此错误。可能是什么原因造成的?

我经历过一系列相似的帖子,但我找不到任何内容。

我正在使用Apache Tomcat v8.0 和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)

和Jar文件:

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

2 个答案:

答案 0 :(得分:1)

你的罐子完全搞砸了:

  1. 始终保持版本一致性(例如,核心2.1.8.1 插件2.2.3
  2. 始终选择最新版本(例如 2.3.x ,或者,如果您可以打破追溯兼容性, 2.5.x
  3. 始终只包含您知道和使用的Struts2插件,仅包含所需的插件。删除所有其他人。
  4. 始终避免包含相同库的两个版本,例如。 poi 3.7 poi 3.8 。这是个玩笑吗?
  5. Tomcat 8.0的第一个版本已经知道Struts2存在问题,您应该升级到最新版本(例如 8.0.39 ),或者更好,升级到 8.5

答案 1 :(得分:1)

Tomcat确实存在问题(请参阅bug #60087)并验证jar文件签名。

解决方案:

  • 更新Apache Tomcat版本。

  • 如果在将应用程序部署到Tomcat服务器之前阅读Verifying Signed JAR Files,则可以手动验证文件的签名。

  • 您可能还损坏了下载的jar文件。您应该始终从已知来源或存储库下载。

  • 您还可以使用jar文件下载摘要签名文件,并使用OS实用程序验证文件的内容。

  • 不要使用恶意网站托管的jar文件进行下载。

  • 使用防病毒软件扫描jar中的病毒并验证签名。某些防病毒软件存在错误,您不应将其结果报告用于最终决定文件内容。例如。 Error: "Invalid sha1 signature file digest for" when verifying a Jar file