Is there a particular reason for sharing a single cache instance across multiple applications? If there are common classes between applications, these should reside in a module ($JBOSS_HOME/modules) so they will be accessible by all applications. You would then associate the cache-container with the module via the <cache-container module="..."/> attribute.