Based on requirements of a project I had and several comments I saw on the forums from people inquiring about similar functionality, I created a jar with drop-in enhancements for ehcache 1.7.x at http://sourceforge.net/projects/ehcache-zen/
- An ExpiredBetterThanNullSelfPopulatingCache that will return an expired entry (instead of null) if it can't obtain an updated one.
- A SelfRefreshingCache that decorates SelfPopulatingCache and provides a thread to background refresh the cache at a configured interval.
- A MultiCacheEntryFactoryRouter that allows one cache to be populated by different CacheEntryFactory's depending on the requested key value.
- Spring integration for the above features.
Please check it out and let me know on the forums there your feedback.