Spring和WildFly Infinispan缓存查找

时间:2016-11-12 10:30:05

标签: java spring jboss wildfly infinispan

我在Spring应用程序中实现了缓存,当我在本地运行时,一切正常。我在资源中配置了infinispan.xml和以下配置:

spring.cache.type=infinispan
spring.cache.infinispan.config=classpath:infinispan.xml

现在我想将它部署到WildFly 10并使用内置缓存。我已使用jndi-name=infinispan/CONTAINER定义了缓存容器。

我尝试将spring.cache.infinispan.config设置为:

infinispan/CONTAINER
java:/infinispan/CONTAINER
java:jboss/infinispan/CONTAINER

但我总是得到以下错误:

java.lang.IllegalArgumentException: Cache configuration does not exist 

我应该怎么做才能使这项工作?

1 个答案:

答案 0 :(得分:0)

据我所知,目前这是不可能的。

您需要扩展SpringEmbeddedCacheManagerFactoryBean并覆盖#createBackingEmbeddedCacheManager()方法。然后使用JndiTemplate获取对部署在WildFly中的EmbeddedCacheManager的引用(类似于this thread)。

我还创建了ISPN-7208以允许为缓存管理器指定JNDI引用。