title: Tomcat 8.5.23 Failed to initialize component
body: <p>I met a serious problem while I try to startup my tomcat 8.5.23. I have no idea why it happened. I edit all file by Notepad++ instead of Eclipse and start/shutdown tomcat by "startup.bat" and "shutdown.bat". Please help me to figure out the reasons and how to fix it. Thank you very much.</p>
  
  <pre><code>30-Oct-2017 14:29:50.360 嚴重 [localhost-startStop-1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:org.apache.catalina.LifecycleException: Failed to initialize component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testProject].StandardWrapper[null]]
      at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:113)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
      at org.apache.catalina.core.StandardContext.addChild(StandardContext.java:2816)
      at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1372)
      at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1195)
      at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:775)
      at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)
      at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94)
      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5105)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
      at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
      at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1144)
      at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1878)
      at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
      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: java.lang.NullPointerException
      at org.apache.tomcat.util.modeler.Util.objectNameValueNeedsQuote(Util.java:26)
      at org.apache.catalina.core.StandardWrapper.getObjectNameKeyProperties(StandardWrapper.java:1711)
      at org.apache.catalina.util.LifecycleMBeanBase.initInternal(LifecycleMBeanBase.java:61)
      at org.apache.catalina.core.ContainerBase.initInternal(ContainerBase.java:903)
      at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107)
      ... 21 more 
  30-Oct-2017 14:29:50.376 嚴重 [localhost-startStop-1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testProject]]
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
      at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
      at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1144)
      at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1878)
      at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
      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: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to initialize component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testProject].StandardWrapper[null]]
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:756)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
      at org.apache.catalina.core.StandardContext.addChild(StandardContext.java:2816)
      at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1372)
      at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1195)
      at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:775)
      at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)
      at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94)
      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5105)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
      ... 10 more 
  30-Oct-2017 14:29:50.391 嚴重 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Error deploying web application directory [D:\Dropbox\coding\practices\JAVA_JSPandServlet\apache-tomcat-8.5.23\webapps\testProject] 
  java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testProject]]
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:756)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
      at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
      at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1144)
      at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1878)
      at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
      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) 
  30-Oct-2017 14:29:50.391 資訊 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [D:\Dropbox\coding\practices\JAVA_JSPandServlet\apache-tomcat-8.5.23\webapps\testProject] has finished in [47] ms
  30-Oct-2017 14:29:50.391 資訊 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
  30-Oct-2017 14:29:50.407 資訊 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
  30-Oct-2017 14:29:50.407 資訊 [main] org.apache.catalina.startup.Catalina.start Server startup in 584 ms
  </code></pre>