Назад | Перейти на главную страницу

Tomcat 8 org.apache.catalina.webresources.Cache.getResource

Я только что обновился с 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. Должно быть <Ресурсы> (множественное число)
  2. FileResourceSet может быть определен в разделе <Resources> <PreResource>, если необходимо, и т.д ... еще не хорошо документирован: Контейнер контекста

Это отлично работает для меня с 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&amp;characterEncoding=UTF-8&amp;useFastDateParsing=false&amp;autoReconnect=true"
        validationQuery="select 1;"
    />
</Context>

Перейти к файлу tomcat/conf/logging.properties

+ Изменить

.level = FINE 

к

.level = SEVERE (or ERROR)

и прокомментируйте эту строку

org.apache.catalina.webresources.Cache.level = SEVERE
#org.apache.catalina.webresources.Cache.level = FINE