2016-11-18 167 views
2

我在使用eclipse neon-1在tomcat-8上运行应用程序时发生此错误,它使用的是spring-4.3。 3,hibernate-5.2.4和maven。无法启动组件[StandardEngine [Catalina] .StandardHost [localhost] .StandardContext [/ LabWebServletHibernate]]

嚴重: A child container failed during start 
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/LabWebServletHibernate]] 
    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:145) 
    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[/LabWebServletHibernate]] 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162) 
    ... 6 more 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [[email protected]] 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162) 
    at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4969) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5099) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
    ... 6 more 
Caused by: org.apache.catalina.LifecycleException: Failed to initialize component [[email protected]] 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:135) 
    at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:706) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
    ... 9 more 
Caused by: java.lang.IllegalArgumentException: java.util.zip.ZipException: invalid LOC header (bad signature) 
    at org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.initInternal(AbstractSingleArchiveResourceSet.java:113) 
    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(Unknown Source) 
    at java.util.zip.ZipFile$ZipFileInputStream.read(Unknown Source) 
    at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(Unknown Source) 
    at java.util.zip.InflaterInputStream.read(Unknown Source) 
    at sun.misc.IOUtils.readFully(Unknown Source) 
    at java.util.jar.JarFile.getBytes(Unknown Source) 
    at java.util.jar.JarFile.getManifestFromReference(Unknown Source) 
    at java.util.jar.JarFile.getManifest(Unknown Source) 
    at org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.initInternal(AbstractSingleArchiveResourceSet.java:111) 
    ... 13 more 

十一月 18, 2016 5:19:25 下午 org.apache.catalina.core.ContainerBase startInternal 
嚴重: 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:145) 
    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:787) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
    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:162) 
    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:145) 
    ... 6 more 

十一月 18, 2016 5:19:25 下午 org.apache.catalina.startup.Catalina start 
嚴重: 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:162) 
    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:162) 
    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:787) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
    ... 7 more 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]] 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162) 
    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
    ... 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:145) 
    ... 11 more 

嚴重: 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:551) 
    at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:877) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    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) 

十一月 18, 2016 5:19:25 下午 org.apache.coyote.AbstractProtocol destroy 
資訊: Destroying ProtocolHandler ["ajp-nio-8009"] 
十一月 18, 2016 5:19:25 下午 org.apache.coyote.AbstractProtocol destroy 
嚴重: 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:551) 
    at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:877) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    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) 

十一月 18, 2016 5:19:25 下午 org.apache.catalina.deploy.NamingResourcesImpl cleanUp 
警告: Failed to retrieve JNDI naming context for container [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/LabWebServletHibernate]] so no cleanup was performed for that container 
javax.naming.NamingException: No naming context bound to this class loader 
    at org.apache.naming.ContextBindings.getClassLoader(ContextBindings.java:258) 
    at org.apache.catalina.deploy.NamingResourcesImpl.cleanUp(NamingResourcesImpl.java:992) 
    at org.apache.catalina.deploy.NamingResourcesImpl.stopInternal(NamingResourcesImpl.java:975) 
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:221) 
    at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5551) 
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:221) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:259) 
    at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:832) 
    at org.apache.catalina.core.ContainerBase.destroyInternal(ContainerBase.java:1012) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:832) 
    at org.apache.catalina.core.ContainerBase.destroyInternal(ContainerBase.java:1012) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:604) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:877) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292) 
    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) 

这里是我的web.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
    version="3.1"> 
    <display-name>LabWebServletHibernate</display-name> 

    <resource-ref> 
     <res-ref-name>jdbc/xxx</res-ref-name> 
     <res-type>javax.sql.DataSource</res-type> 
     <res-auth>Container</res-auth> 
     <res-sharing-scope>Unshareable</res-sharing-scope> 
    </resource-ref> 
    <welcome-file-list> 
     <welcome-file>index.jsp</welcome-file> 
    </welcome-file-list> 

    <context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>/WEB-INF/beans.config.xml</param-value> 
    </context-param> 
    <listener> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 

    <filter> 
     <filter-name>OpenSessionInViewFilter</filter-name> 
     <filter-class>model.misc.OpenSessionInViewFilter</filter-class> 
     <init-param> 
      <param-name>sessionFactoryBeanName</param-name> 
      <param-value>sessionFactory</param-value> 
     </init-param> 
    </filter> 
    <filter-mapping> 
     <filter-name>OpenSessionInViewFilter</filter-name> 
     <url-pattern>/*</url-pattern> 
    </filter-mapping> 

</web-app> 

和beans.config.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> 


    <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
     <property name="jndiName" value="java:comp/env/jdbc/xxx"></property> 
    </bean> 

    <bean id="sessionFactory" 
     class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> 
     <property name="dataSource" ref="dataSource"></property> 
     <property name="configLocation" value="classpath:hibernate.cfg.xml"></property> 
     <!-- <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop> 
      <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.current_session_context_class">thread</prop> 
      </props> </property> <property name="annotatedClasses"> <array> <value>model.CustomerBean</value> 
      <value>model.ProductBean</value> </array> </property> --> 
    </bean> 
    <context:annotation-config></context:annotation-config> 
    <context:component-scan base-package="model"></context:component-scan> 
</beans> 

我好共享任何其他来源,如果它是必需的,谢谢任何帮助。

回答

10

您的项目的任何jar依赖项似乎已损坏。您可以尝试删除所有本地Maven回购文件夹,或者如果您可以设法知道哪个文件已损坏,只需将其删除即可。

theese动作后,只需更新Maven依赖,它应该开始工作

+0

我已经试过,仍然没有字,也是同样的错误:( –

+0

我再次尝试,现在突然有效,谢谢! –

0

同样的问题就出来了,当我删除的pom.xml的依赖。然后我只是更新Maven依赖项(右键单击项目 - > Maven - >更新项目)并清理我的项目(项目 - >清理),不起作用。 最后,我只是从tomcat服务器上删除项目,然后再次添加项目。这行得通!

0

此问题可能是因为您的项目正在使用的jar文件必须已损坏。由于我的机器是窗户,所以我前往以下路径

C://Users//.m2/repository/

通过删除该库中的所有文件和文件夹修复此错误。 这些瓶子将被重新下载,并且在eclipse中重新启动并清理工作空间后,此错误已解决。

相关问题