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


10

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"
/>  

回答:


14

エラーはほとんどありません:

  1. <Resources>である必要があります(複数)
  2. FileResourceSetは、必要に応じて<Resources> <PreResource>セクションなどで定義できます...まだ十分に文書化されていません:コンテキストコンテナー

これは、Tomcat 8.0.15およびLiferayポータル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>

0

ファイルにアクセスする tomcat/conf/logging.properties

変化する

.level = FINE 

.level = SEVERE (or ERROR)

その行にコメント

org.apache.catalina.webresources.Cache.level = SEVERE
#org.apache.catalina.webresources.Cache.level = FINE
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.