I am trying to migrate my Seam 2.3 application to use Infinispan for caching within JBoss AS7. I've looked at the Blog example within the Seam 2.3 distribution, and have copied the jGroupsConfig.xml and infinispan.xml files into my web application's source path and modified my components.xml to specify the appropriate cache provider. However, when I run something like this...
public class MyClass {
...
@In
CacheProvider cacheProvider;
...
public void myMethod() {
this.cacheProvider.get("abcd");
}
...
}
...I get an error saying the Infinispan cache cannot be started. There are no further errors, beyond what appears to be a parser reporting an IOException. All I see is:
com.ctc.wstx.exc.WstxIOException: Stream closed
I've cranked up the logging but still don't see anything useful. Is there anything further I need to do to get Infinispan caching working within my app? Do I need to manually create anything within the JBoss AS7 console? My cache config files are in my web project's source directory. Is that the correct location?
For anyone else having this issue, I've finally gotten all of the necessary pieces in place. Here's what I had to do...
Do NOT declare the Infinispan module in your JBoss deployment structure file. Instead, use the JARs that are part of the Seam 2.3 distribution
The WstxIOException itself is due to the fact that it was unable to locate my infinispan.xml configuration file. Place this in the Java source directory so it becomes a direct part of your classpath, not in your META-INF or WEB-INF directories (unless you declare it as such in your components.xml file)
Make sure you have all of the XML parsing JARs (stax, etc.) from the Seam 2.3 distribution in your EAR