EHC ❯ NPE with multiple cachemanagers with no disk store
-
Bug
-
Status: Closed
-
-
Resolution: Fixed
-
-
-
drb
-
Reporter: sourceforgetracker
-
September 21, 2009
-
0
-
Watchers: 0
-
September 22, 2009
-
September 22, 2009
Description
I just started using ehcache. I specifically want to:
- have multiple instances (no singleton)
- have no external configuration files (ehcache.xml)
- not use disk storage
With that in mind, I wrote the following:
// in a constructor some class: this.cacheManager = new CacheManager(makeCacheConfig());
// within the same class: private static Configuration makeCacheConfig() { Configuration config = new Configuration(); CacheConfiguration defaults = new CacheConfiguration(); defaults.setEternal(true); defaults.setDiskPersistent(false); defaults.setOverflowToDisk(false); defaults.setMaxElementsInMemory(MAX_CACHE_ELEMENTS); config.setDefaultCacheConfiguration(defaults); return config; }
This works fine for one instance of CacheManager. When I create multiple instances of CacheManager in this way, I get a NullPointerException:
java.lang.NullPointerException
at
net.sf.ehcache.CacheManager.detectAndFixDiskStorePathConflict
(CacheManager.java:269)
at
net.sf.ehcache.CacheManager.configure(CacheManager.java:252)
at
net.sf.ehcache.CacheManager.init(CacheManager.java:196)
at net.sf.ehcache.CacheManager.
For now, the workaround I’m using is to configure a (bogus) disk store. But this also means that I have to generate a unique bogus name for each disk store.
In addition to fixing the NPE, please please please enhance the documentation (javadoc, user guide) with respect to programmatic configuration. It would be nice to have a reference of all of the required and optional parameters and values. Sourceforge Ticket ID: 1593099 - Opened By: nobody - 9 Nov 2006 02:27 UTC
Re-opening so that I can properly close out these issues and have correct Resolution status in Jira