Just touch the servlet class and use Eclipse to create a new servlet class in the textbook way.
After the new is completed, register in Web. xml
It will be an error at this time.
May 07, 2016 11:23:28 am Org.apache.coyote.AbstractProtocol Pause
Info: Pausing protocolhandler ["http-nio-8080"]
May 07, 2016 11:23:28 am Org.apache.coyote.AbstractProtocol Pause
Info: Pausing protocolhandler ["ajp-nio-8009"]
May 07, 2016 11:23:28 am Org.apache.catalina.core.StandardService stopinternal
Information: Stopping service Catalina
May 07, 2016 11:23:28 am Org.apache.coyote.AbstractProtocol destroy
Info: Destroying Protocolhandler ["http-nio-8080"]
May 07, 2016 11:23:28 am Org.apache.coyote.AbstractProtocol destroy
Critical: Failed to destroy end point associated with Protocolhandler ["http-nio-8080"]
Java.lang.NullPointerException
At Org.apache.tomcat.util.net.NioEndpoint.releaseCaches (nioendpoint.java:305)
At Org.apache.tomcat.util.net.NioEndpoint.unbind (nioendpoint.java:481)
At Org.apache.tomcat.util.net.AbstractEndpoint.destroy (abstractendpoint.java:831)
At Org.apache.coyote.AbstractProtocol.destroy (abstractprotocol.java:533)
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)
May 07, 2016 11:23:28 am Org.apache.coyote.AbstractProtocol destroy
Info: Destroying Protocolhandler ["ajp-nio-8009"]
May 07, 2016 11:23:28 am Org.apache.coyote.AbstractProtocol destroy
Critical: Failed to destroy end point associated with Protocolhandler ["ajp-nio-8009"]
Java.lang.NullPointerException
At Org.apache.tomcat.util.net.NioEndpoint.releaseCaches (nioendpoint.java:305)
At Org.apache.tomcat.util.net.NioEndpoint.unbind (nioendpoint.java:481)
At Org.apache.tomcat.util.net.AbstractEndpoint.destroy (abstractendpoint.java:831)
At Org.apache.coyote.AbstractProtocol.destroy (abstractprotocol.java:533)
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)
Then I found out why. It turns out I used a Tomcat8.0.
The server used annotations to help me register the servlet, this time no longer need me to manually register with Web. Xml.
I deleted the contents of the Web. XML configuration.
Critical: Failed to destroy end point associated with Protocolhandler ["http-nio-8080"] Java.lang.NullPointer