Chapter 1. General Information


What is JBoss Cache?

JBoss Cache is a replicated and transactional cache. It is replicated since multiple JBoss Cache instances can be distributed (either within the same JVM or across several JVMs whether they reside on the same machine or on different machines on a network) and data is replicated across the whole group. It is transactional because a user can configure a JTA compliant transaction manager and make any cache interaction transactional. Note that the cache can also be run without any replication; this is the local mode.

JBoss Cache comes in two flavours: Core and Pojo versions. The core library (using the org.jboss.cache.Cache interface ) is the underlying library that organises data in a tree-like structure and handles all locking, passivation, eviction and replication characteristics of data in the cache. The pojo library (using the org.jboss.cache.pojo.PojoCache interface) is built atop the core library and allows introspection of objects in the cache providing transparent coherence by using JBoss AOP. Note that the Pojo version of JBoss Cache (referred to as PojoCache) comes with a separate set of documentation (user guide, FAQ, etc.) available on the JBoss Cache documentation site .

JBoss Cache is made available in one of four different packages:

  • jboss-cache-core

    contains the core Cache library for users who do not wish to use the additional functionality offered by PojoCache.
  • jboss-cache-pojo

    contains the core Cache library as well as the PojoCache extensions and dependencies.
  • jboss-cache-all

    contains all of the above, including unit tests and source code.
  • jboss-cache-core-JDK140

    contains a JDK 1.4 compatible version of the core Cache library. Note that PojoCache is only available for JDK 5.0.


Who are the JBoss Cache developers?

JBoss Cache has an active community of developers and contributors. The project was founded by Bela Ban and is currently led by Manik Surtani. Jason Greene is the lead for the PojoCache subsystem, and other contributors both past and present include Ben Wang, Harald Gliebe, Brian Stansberry, Galder Zamarreno and Elias Ross.


What is the license for JBoss Cache?

JBoss Cache is licensed under LGPL .


Where can I download JBoss Cache?

The JBoss Cache product download page has prebuilt binaries as well as source distributions. You can also grab snapshots from the JBoss CVS repository (see this wiki page ) - the module name is JBossCache


How do I build JBoss Cache from CVS sources?

To build, do sh jar . This will produce jboss-cache.jar and pojocache.jar in the dist/lib directory. Note that you will need to use JDK 5 to build the distribution.


Which versions of the JDK are supported by JBoss Cache?

JBoss Cache is baselined on Java 5.0 and this is the platform on which JBoss Cache is most thoroughly tested. If, for whatever reason you have to use Java 1.4, you could build a retroweaved version of the core cache library that is Java 1.4 compatible, using the simple instructions on this wiki page on building and running JBoss Cache on Java 1.4. . Note that Red Hat Inc. does not offer commercial support for retroweaved binaries at this stage.

Java 6 should work as well, and we haven't heard of any specific problems of JBoss Cache run under Java 6.


How do I know the version of JBoss Cache that I am using?

java -jar jbosscache.jar will spit out version details.


Can I run JBoss Cache outside of JBoss Application Server?

Of course! Even though JBoss Cache comes integrated with JBoss Application Server as an MBean service, it can also be run standalone, in any Java EE server such as BEA WebLogic, IBM Websphere or Tomcat. It can also run in a standalone Java process, completely outside of an application server. See the user guide for more details.


How can I migrate my application and configuration from using JBoss Cache 1.x to 2.x?

Look at this wiki page for help.


Where can I report bugs or problems?

Please report any bugs or problems to JBoss Cache User Forum .