我刚刚从 7.0.52 升级到 8.0.14。
我收到很多静态图像文件的错误信息:
org.apache.catalina.webresources.Cache.getResource 无法将 [/base/1325/WA6144-150x112.jpg] 处的资源添加到缓存中,因为在清除过期的缓存条目后,可用空间不足 - 请考虑增加缓存的最大大小
我没有指定任何特定的资源设置,并且我没有获得 7.0.52 的此功能。
我在一份据称已修复的错误报告中发现,启动时会发生这种情况。对我来说,这种情况不是在启动时发生,而是在请求资源时不断发生。
还有其他人遇到这个问题吗?
谢谢。
尝试至少禁用缓存,但我找不到如何指定不使用缓存的示例。属性已从 8 中的上下文中消失。尝试添加资源,但无法正确配置。
<Resource name="file"
cachingAllowed="false"
className="org.apache.catalina.webresources.FileResourceSet"
/>
答案1
您有几个错误:
- 应为 <Resources> (复数)
- 如果需要的话,可以在 <Resources><PreResource> 部分中定义 FileResourceSet 等等...尚未得到很好的记录:上下文容器
对于我来说,Tomcat 8.0.15 和 Liferay Portal 6.2.1 GA2(具有大量静态文件 + JDBC 池)运行良好:
<?xml version='1.0' encoding='utf-8'?>
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Resources
cachingAllowed="true"
cacheMaxSize="100000"
/>
<Resource name="jdbc/liferay"
auth="Container"
type="javax.sql.DataSource"
maxActive="64"
maxIdle="16"
maxWait="1000"
username="root"
password=""
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/lp_621_ga2_patched?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false&autoReconnect=true"
validationQuery="select 1;"
/>
</Context>
答案2
获取文件tomcat/conf/logging.properties
改变
.level = FINE
到
.level = SEVERE (or ERROR)
并注释掉该行
org.apache.catalina.webresources.Cache.level = SEVERE
#org.apache.catalina.webresources.Cache.level = FINE