我正在尝试迁移我的 Seam 2.3 应用程序以使用 Infinispan 在 JBoss AS7 中进行缓存。我查看了Seam 2.3 发行版中的博客示例,并将jGroupsConfig.xml 和infinispan.xml 文件复制到我的Web 应用程序的源路径中,并修改了我的components.xml 以指定适当的缓存提供程序。然而,当我运行这样的事情时......
public class MyClass {
...
@In
CacheProvider cacheProvider;
...
public void myMethod() {
this.cacheProvider.get("abcd");
}
...
}
...我收到一条错误消息,指出 Infinispan 缓存无法启动。除了以下错误之外,没有其他错误appears成为报告 IOException 的解析器。我所看到的只是:
com.ctc.wstx.exc.WstxIOException: Stream closed
我已经加大了日志记录的力度,但仍然没有看到任何有用的东西。我还需要做些什么才能让 Infinispan 缓存在我的应用程序中正常工作吗?我需要在 JBoss AS7 控制台中手动创建任何内容吗?我的缓存配置文件位于我的 Web 项目的源目录中。那是正确的位置吗?
对于遇到此问题的其他人,我终于把所有必要的部分都准备好了。这就是我必须做的......
不要在 JBoss 部署结构文件中声明 Infinispan 模块。相反,使用 Seam 2.3 发行版中的 JAR
WstxIOException 本身是由于它无法找到我的 infinispan.xml 配置文件。将其放置在 Java 源目录中,以便它成为类路径的直接部分,而不是放置在 META-INF 或 WEB-INF 目录中(除非您在 Components.xml 文件中声明它)
确保您的 EAR 中拥有 Seam 2.3 发行版中的所有 XML 解析 JAR(stax 等)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)