Infinispanを、Hibernate 2nd Level Cacheとして使う場合は、あらかじめInfinispanのCacheManagerを起動しておく必要があるらしいです。
「$JBOSS_HOME/standalone/configuration/standalone.xml」の以下の部分
<subsystem xmlns="urn:jboss:domain:infinispan:1.2" default-cache-container="hibernate"> <cache-container name="hibernate" default-cache="local-query"> <local-cache name="entity"> <transaction mode="NON_XA"/> <eviction strategy="LRU" max-entries="10000"/> <expiration max-idle="100000"/> </local-cache> <local-cache name="local-query"> <transaction mode="NONE"/> <eviction strategy="LRU" max-entries="10000"/> <expiration max-idle="100000"/> </local-cache> <local-cache name="timestamps"> <transaction mode="NONE"/> <eviction strategy="NONE"/> </local-cache> </cache-container> </subsystem>
の以下の部分を
<cache-container name="hibernate" default-cache="local-query">
このように修正します。
<cache-container name="hibernate" default-cache="local-query" start="EAGER">
「start="EAGER"」とします。
これで、起動時にInfinispanのCacheManagerがJNDIに登録されます。ルックアップする時の名前は、「java:jboss/infinispan/container/hibernate」です。
なお、JBoss AS 7.1.1で使おうとしたら、これに引っかかって動かせませんでした…。
https://community.jboss.org/thread/177214?start=15&tstart=0
WildFlyに持ち越しかなぁ。