Tomcat:java.lang.IllegalStateException:无法在规范上下文路径和URI之间找到匹配项

时间:2015-10-27 15:42:42

标签: java tomcat uri war illegalstateexception

我的团队前几天在我们的内部网站上进行测试时遇到了这个错误,但我还没有找到任何文档。完整的堆栈跟踪,以及一些命名信息的编辑,在这里:

    Exception in logs: 
26-Oct-2015 12:19:09.894 SEVERE [http-nio-8080-exec-12] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [Function] in context with path [/warname] threw exception 
 java.lang.IllegalStateException: Unable to find match between the canonical context path [/warname] and the URI presented by the user agent [ion=v5.201+AVR+v241&] 
at org.apache.catalina.connector.Request.getContextPath(Request.java:1963) 
at org.apache.catalina.connector.RequestFacade.getContextPath(RequestFacade.java:783) 
at org.apache.catalina.core.ApplicationDispatcher.wrapRequest(ApplicationDispatcher.java:934) 
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364) 
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:318) 
at package.path.to.servlet.doPost(servlet.java:97) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
at java.lang.Thread.run(Thread.java:745) 

26-Oct-2015 12:19:09.897 SEVERE [http-nio-8080-exec-12] org.apache.catalina.core.StandardHostValve.custom Exception Processing ErrorPage[exceptionType=java.lang.RuntimeException, location=/some/location/jsp.jsp] 
 java.lang.IllegalStateException: Unable to find match between the canonical context path [/warname] and the URI presented by the user agent [ion=v5.201+AVR+v241&] 
at org.apache.catalina.connector.Request.getContextPath(Request.java:1963) 
at org.apache.catalina.connector.RequestFacade.getContextPath(RequestFacade.java:783) 
at org.apache.catalina.core.ApplicationDispatcher.wrapRequest(ApplicationDispatcher.java:934) 
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364) 
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:318) 
at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:439) 
at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:382) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
at java.lang.Thread.run(Thread.java:745) 

具体来说,这是通过在会话超时后运行db查询来触发的。用户在进行尝试时会被提示再次登录,但在登录后会抛出此错误。如果有人见过这个,你可以给我一些方向吗?

0 个答案:

没有答案