tomcat - 调用 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。
解决方案
推荐阅读
- html - 添加标签后 li float 不起作用
- google-cloud-storage - 是否可以在不泄漏 Google Cloud 中的项目 ID 的情况下引用 KMS 密钥名称?
- java - 我应该使用什么样的数组或列表来完成我的随机化代码?
- mysql - MySQL每天在特定时间崩溃
- html - 如何正确定义字体大小
- mysql - 在将 node.js 连接到 mysql 时获取 ER_NOT_SUPPORTED_AUTH_CODE
- reactjs - ReactJS 在渲染函数中传递不同的属性集
- discord.py - 如何将音频文件上传到文本频道
- python - Python在读取文件时替换行中的字符?
- python - Snakemake:不解析输入中的通配符