首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Infinispan CacheStore异常

Infinispan CacheStore异常
EN

Stack Overflow用户
提问于 2014-04-08 21:14:28
回答 1查看 277关注 0票数 0

我想使用MongoDb作为Infinispan的缓存,但得到了以下异常,它与问题Exception using mongodb as infinispan cache store不同,因为b.loader()方法在Infinispan7.0JAR中不可用。我只是通过使用b.persistence.addStore()解决了问题,但仍然得到了问题代码中提到的异常--

代码语言:javascript
复制
ConfigurationBuilder b = new ConfigurationBuilder();
    b.loaders().addStore(
    MongoDBCacheStoreConfigurationBuilder.class).host( "localhost" )
    .port( 27017 )
    .timeout( 1500 )
    .acknowledgment( 0 )
    .username( "mongoDBUSer" )
    .password( "mongoBDPassword" )

    .database( "infinispan_cachestore" )
    .collection( "entries" );

    final Configuration config = b.build();
    MongoDBCacheStoreConfiguration store = (MongoDBCacheStoreConfiguration) config.loaders().cacheLoaders().get(0);

    EmbeddedCacheManager cacheManager=new DefaultCacheManager();
    cacheManager.defineConfiguration("usersCache", config);
    //DefaultCacheManager manger=new DefaultCacheManager(config);
    Cache<String, String> usersCache = cacheManager.getCache("usersCache");

例外:--

代码语言:javascript
复制
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" org.infinispan.CacheException: Unable to invoke method public void org.infinispan.loaders.CacheLoaderManagerImpl.start() on object of type CacheLoaderManagerImpl
    at org.infinispan.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:207)
    at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:889)
    at org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:658)
    at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:647)
    at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:550)
    at org.infinispan.factories.ComponentRegistry.start(ComponentRegistry.java:221)
    at org.infinispan.CacheImpl.start(CacheImpl.java:691)
    at org.infinispan.manager.DefaultCacheManager.wireAndStartCache(DefaultCacheManager.java:685)
    at org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:648)
    at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:544)
    at com.infini.demo.DemoWithInfi5.main(DemoWithInfi5.java:31)
Caused by: org.infinispan.CacheException: Unable to start cache loaders
    at org.infinispan.loaders.CacheLoaderManagerImpl.start(CacheLoaderManagerImpl.java:163)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.infinispan.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:205)
    ... 10 more
Caused by: java.lang.IllegalArgumentException: Cannot load null class!
    at org.infinispan.util.Util.getInstance(Util.java:224)
    at org.infinispan.loaders.CacheLoaderManagerImpl.createCacheLoader(CacheLoaderManagerImpl.java:346)
    at org.infinispan.loaders.CacheLoaderManagerImpl.createCacheLoader(CacheLoaderManagerImpl.java:336)
    at org.infinispan.loaders.CacheLoaderManagerImpl.start(CacheLoaderManagerImpl.java:149)
    ... 15 more
EN

回答 1

Stack Overflow用户

发布于 2014-04-08 21:23:06

下载infinispan-cachestore-mongodb-5.3.0.final.jar并将其导入到您的项目中,并确保在使用它的类中导入包。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22938201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档