首页 > 解决方案 > 调用 getRealPath 时的 Tomcat 8.5 ArrayIndexOutOfBoundsException

问题描述

在一些非常罕见的情况下,我们在调用时会收到此getRealPath错误Tomcat 8.5.50

java.lang.ArrayIndexOutOfBoundsException: 244
    at java.io.ExpiringCache.cleanup(ExpiringCache.java:120)
    at java.io.ExpiringCache.get(ExpiringCache.java:76)
    at java.io.WinNTFileSystem.canonicalize(WinNTFileSystem.java:406)
    at java.io.File.getCanonicalPath(File.java:618)
    at org.apache.catalina.webresources.AbstractFileResourceSet.file(AbstractFileResourceSet.java:94)
    at org.apache.catalina.webresources.DirResourceSet.getResource(DirResourceSet.java:101)
    at org.apache.catalina.webresources.StandardRoot.getResourceInternal(StandardRoot.java:280)
    at org.apache.catalina.webresources.CachedResource.validateResource(CachedResource.java:128)
    at org.apache.catalina.webresources.Cache.getResource(Cache.java:69)
    at org.apache.catalina.webresources.StandardRoot.getResource(StandardRoot.java:215)
    at org.apache.catalina.webresources.StandardRoot.getResource(StandardRoot.java:205)
    at org.apache.catalina.core.StandardContext.getRealPath(StandardContext.java:4384)
    at org.apache.catalina.core.ApplicationContext.getRealPath(ApplicationContext.java:387)
    at org.apache.catalina.core.ApplicationContextFacade.getRealPath(ApplicationContextFacade.java:339)

我们在使用的时候没有遇到这个问题Tomcat 7,我觉得应该还可以Tomcat-8.5.15

异常后服务器停止响应,我们需要重新启动它。

我们使用 struts2.5 作为 MVC。

标签: tomcatservletstomcat8

解决方案


推荐阅读