【发布时间】:2018-02-13 16:19:04
【问题描述】:
问题来了:
我有一个 Dynamic Web Application,我有一个 sessions 列表作为静态字段,我现在正在处理将来可能出现的集群问题。
我想将我的静态 HashMap 移动到一个可以独立于服务器访问的地方,换句话说,一旦我有 2 台服务器,而带有静态 HashMap 的服务器死了,另一台服务器应该可以使用infinispan缓存恢复HashMap,不会因为服务器故障而丢失。
所以,我尝试的是实现一些EmbededCacheManager 和一些CashContainers,但在大多数情况下,我遇到的问题是我根本无法将infinispan jar 添加到我的项目中,并使用该死的缓存。
我四处搜索,但找不到将依赖项添加到我的 WEB 项目的方法。网上所有的教程,比如这个:http://infinispan.org/docs/stable/getting_started/getting_started.html,都是用Maven的,我没有。我需要一个免费的 Maven 解决方案。
另外,我的代码:
static List<Session> sessions = new ArrayList<Session>();
还有我想做什么:
@Resource(lookup = "java:jboss/infinispan/container/myCache")
public CacheContainer myCache;
但我根本无法做到这一点。 我在网上四处搜索,发现我需要在MANIFEST.MF文件中将infinispan依赖添加到我的项目中,一旦我这样做了:
Manifest-Version: 1.0
Dependencies: org.infinispan export
我将manifest 文件夹添加到 src\META-INF 文件夹(我也创建了那个文件夹,因为它不存在),现在我可以导入 infinispan.cache
但是,我无法构建我的整个项目,它总是在我的standalone.xml 文件中显示一些错误,这是我添加的部分。
代码如下:
<subsystem xmlns="urn:jboss:domain:infinispan:4.0">
<cache-container name="myCache" default-cache="default" module="org.wildfly.clustering.server">
<transport lock-timeout="60000"/>
<replicated-cache name="sessions" mode="SYNC">
</replicated-cache>
</cache-container>
...
<\subsystem>
在控制台中,WildFly 10 顺便说一句,写了一行显示出现问题的行和列,问题出现在第 2 行和第 4 列(我不知道第 4 列在哪里,因为,在standalone.xml 中的前几个字符是制表符...?)
希望您能解决我的问题,因为,我不知道下一步该做什么。 谢谢。
【问题讨论】:
-
你使用的是什么构建系统?
-
我在 Eclipse 中工作。
标签: java caching infinispan