当前位置:

java.lang.IllegalStateException: 启动子级时出错

访客 2024-04-24 330 0

本章是存放我遇到该异常子类的文章,但凡是涉及此异常都会放在里面,
所以会多次更新,如果有遇到其他困难可以告诉我,我可能碰到过

有帮助就帮忙给个赞或者关注吧!!!!!【鞠躬】

1、情况一:@WebServlet的配置问题

1.1、错误警告查看

你可以页面搜索一些关键字,看下有没有相同的异常提示/警告18-Jan-202208:57:20.774严重[RMITCPConnection(5)-127.0.0.1]org.apache.tomcat.util.modeler.BaseModelMBean.invoke调用方法[manageApp]时发生异常java.lang.IllegalStateException:启动子级时出错atorg.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:729)atorg.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:698)atorg.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)atorg.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1822)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)atjava.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.base/java.lang.reflect.Method.invoke(Method.java:566)atorg.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:293)atjava.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)atjava.management/com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)atorg.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:428)atorg.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:376)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)atjava.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.base/java.lang.reflect.Method.invoke(Method.java:566)atorg.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:293)atjava.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)atjava.management/com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)atjava.management/com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1466)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307)atjava.base/java.security.AccessController.doPrivileged(NativeMethod)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1406)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:827)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)atjava.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.base/java.lang.reflect.Method.invoke(Method.java:566)atjava.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359)atjava.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)atjava.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)atjava.base/java.security.AccessController.doPrivileged(NativeMethod)atjava.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)atjava.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562)atjava.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)atjava.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)atjava.base/java.security.AccessController.doPrivileged(NativeMethod)atjava.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676)atjava.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)atjava.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)atjava.base/java.lang.Thread.run(Thread.java:834)Causedby:org.apache.catalina.LifecycleException:无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/my]]atorg.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)atorg.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)...42moreCausedby:java.lang.IllegalArgumentException:servlet映射中的<urlpattern>[mytest1]无效atorg.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3261)atorg.apache.catalina.Context.addServletMappingDecoded(Context.java:905)atorg.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1562)atorg.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1329)atorg.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:986)atorg.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:303)atorg.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)atorg.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5068)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)...43more18-Jan-202208:57:20.778严重[RMITCPConnection(5)-127.0.0.1]org.apache.tomcat.util.modeler.BaseModelMBean.invoke调用方法[createStandardContext]时发生异常javax.management.RuntimeOperationsException:调用方法[manageApp]时发生异常atorg.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:303)atjava.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)atjava.management/com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)atorg.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:428)atorg.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:376)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)atjava.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.base/java.lang.reflect.Method.invoke(Method.java:566)atorg.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:293)atjava.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)atjava.management/com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)atjava.management/com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1466)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307)atjava.base/java.security.AccessController.doPrivileged(NativeMethod)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1406)atjava.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:827)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)atjava.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.base/java.lang.reflect.Method.invoke(Method.java:566)atjava.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359)atjava.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)atjava.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)atjava.base/java.security.AccessController.doPrivileged(NativeMethod)atjava.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)atjava.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562)atjava.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)atjava.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)atjava.base/java.security.AccessController.doPrivileged(NativeMethod)atjava.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676)atjava.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)atjava.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)atjava.base/java.lang.Thread.run(Thread.java:834)Causedby:java.lang.IllegalStateException:启动子级时出错atorg.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:729)atorg.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:698)atorg.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)atorg.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1822)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atjava.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)atjava.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.base/java.lang.reflect.Method.invoke(Method.java:566)atorg.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:293)...34moreCausedby:org.apache.catalina.LifecycleException:无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/my]]atorg.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)atorg.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)...42moreCausedby:java.lang.IllegalArgumentException:servlet映射中的<urlpattern>[mytest1]无效atorg.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3261)atorg.apache.catalina.Context.addServletMappingDecoded(Context.java:905)atorg.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1562)atorg.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1329)atorg.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:986)atorg.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:303)atorg.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)atorg.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5068)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)...43more[2022-01-1808:57:20,800]工件untitled1:warexploded:部署工件时出错。请参阅服务器日志了解详细信息。18-Jan-202208:57:30.198信息[Catalina-utility-1]org.apache.catalina.startup.HostConfig.deployDirectory把web应用程序部署到目录[D:\softwore\Tomcat\apache-tomcat-10.1.0-M8\webapps\manager]18-Jan-202208:57:30.614警告[Catalina-utility-1]org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom使用[SHA1PRNG]创建会话ID生成的SecureRandom实例花费了[310]毫秒。18-Jan-202208:57:30.650信息[Catalina-utility-1]org.apache.catalina.startup.HostConfig.deployDirectoryWeb应用程序目录[D:\softwore\Tomcat\apache-tomcat-10.1.0-M8\webapps\manager]的部署已在[453]毫秒内完成

1.2、详解:

前提

这一天我在测试刚学的东西,昨天服务器运行正常,今天刚刚写点测试就报错因为不知道是不是昨天试图让别人访问我的服务器,修改了servlet.xml(**我用的是Tomcat**)所以我第一时间去看了对应文档

行动

servlet.xml发现无误,所以只能查看错误警告:从上到下粗略查看发现关键字**<urlpattern>[mytest1]**无效,应该是映射出现了问题(前面有提示服务器正常启动,但后面部署工程出现错误)

原因

写映射的时候遗漏了“**/**”,如图:有绿色波浪线,但是没有飘红,而且也只是提示拼写错误,更换一个字符串而已,所以我没有多想

更改前:

更改后:仍然提示:

2、情况二:XML映射问题

异常情况和情况一相同,只是地点换了,错误相同,不过多赘述在写XML映射标签的时候,也是漏了”/“hello->/hello

正确形式:

<servlet-mapping><servlet-name>Mymap</servlet-name><url-pattern>/hello</url-pattern></servlet-mapping>

发表评论

  • 评论列表
还没有人评论,快来抢沙发吧~