Repro: 1. Set CATALINA_HOME to "C:\Program Files\Apache Software Foundation\apache-tomcat-8.5.12" 2. Set CATALINA_BASE to "C:\ProgramData\Tomcat" 3. Add file "C:\ProgramData\Tomcat\conf\Catalina\localhost\host-manager.xml" with following content: <Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/host-manager"> </Context> 4. Start Tomcat and navigate to http://localhost:8080/host-manager Tomcat hits the following exception: >java.lang.NullPointerException > at org.apache.catalina.core.ApplicationMapping.getServletMapping(ApplicationMapping.java:62) > at org.apache.catalina.connector.Request.getServletMapping(Request.java:2210) > at org.apache.catalina.connector.RequestFacade.getServletMapping(RequestFacade.java:1127) > at org.apache.catalina.core.ApplicationHttpRequest.setRequest(ApplicationHttpRequest.java:710) > at org.apache.catalina.core.ApplicationHttpRequest.<init>(ApplicationHttpRequest.java:107) > at org.apache.catalina.core.ApplicationDispatcher.wrapRequest(ApplicationDispatcher.java:933) > at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:357) > at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:311) > at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:395) > at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:254) > at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:177) > at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80) > at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624) > at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) > at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341) > at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:783) > at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) > at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:798) > at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1441) > at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) > at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) > at java.lang.Thread.run(Thread.java:745) Here's the offending line, mappingData.pathInfo is null: >mapping = new MappingImpl(mappingData.pathInfo.toString().substring(1), > mappingData.wrapperPath.toString() + "/*", > mappingData.matchType, servletName);
*** This bug has been marked as a duplicate of bug 60882 ***