0

JBossCache は初めてです。ユーザー ドキュメントを読むと、使用する Eviction クラスにリスナーを追加できると書かれていますが、構成ファイルにリスナーを追加する方法、または追加する方法を見つけることができませんでした。

メソッド @NodeEvicted で @CacheListener を追加しようとしましたが、そのメソッド

@CacheListener
public class EvictionListener {

    @NodeEvicted
    public void nodeEvicted(NodeEvent ne) {
        System.out.println("Se borro el nodo");
    }
}

それをキャッシュインスタンスに追加します

CacheFactory factory = new DefaultCacheFactory();
this.cache = factory.createCache();

EvictionListener listener = new EvictionListener();
this.cache.create();
this.cache.addCacheListener(listener);

しかし、sysout は実行されません。それをテストするために、単純な Main 値を実行しています。これは私が使用している構成値です:

<jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:jboss:jbosscache-core:config:3.2">


    <transaction transactionManagerLookupClass="org.jboss.cache.transaction.GenericTransactionManagerLookup"/>


    <eviction wakeUpInterval="20">
        <default algorithmClass="org.jboss.cache.eviction.FIFOAlgorithm" wakeUpInterval="20">
            <property name="maxNodes" value="20" />         
        </default>           
    </eviction>

</jbosscache>
4

1 に答える 1

0

XML構成ファイルを読み取っていなかったため、問題は解決しました。

私は行方不明でした:

factory.createCache(file);
于 2011-10-12T18:45:34.187 に答える