OSCache - OSCache 2.4

### Release Notes (1st Mai 2007 - by Lars Torunski) #### New features and enhancements Furthermore the next major release 2.4 enhances the CacheFilter and allows a better integration with the Spring Framework and JMX Monitoring. Setting CacheFilter parameters runtime Lazy initialization in CacheFilter in order to ease spring integration Allow disabling cacheing for special http methods (e.g. POST/DELETE/PUT) in CacheFilter CacheFilter allow reentrance over different filter configurations Hibernate 3.2 integration support JMX Monitoring/Administration via Spring Improve oscache.properties loading Performance improvment for large disk persistence usage #### Upgrade Guide Due to the enhancements in the CacheFilter and method signature changes, it's recommended to recompile your code. Due to changes for CACHE-284 the handling of the listeners have been changed: Before OSCache 2.4 objects which implemented different CacheEventListener (e.g. CacheEntryEventListener and CacheMapAccessEventListener) had to be added twice, because the listeners where registrated only for one special event listener. With OSCache 2.4 only the object has to be added to the list without the 2nd parameter 'type of the listener'. #### JIRA Issue List
OpenSymphony JIRA (29 issues)
T | Key | Summary | Status
--- | --- | --- | ---
| CACHE-260 | NullPointerException in AbstractConcurrentReadCache | Closed
| CACHE-295 | Hibernate 3.2 integration support | Closed
| CACHE-215 | Setting CacheFilter parameters runtime | Closed
| CACHE-99 | Use lazy initialization in cache filter in order to ease spring integration | Closed
| CACHE-258 | NullPointerException when using putCache(key, val) in LRUCache | Closed
| CACHE-273 | Update to Commons Logging 1.1 | Closed
| CACHE-253 | Migrate from CVS to SVN | Closed
| CACHE-261 | Check javadoc of Cache.cancelUpdate on key not being updated | Closed
| CACHE-163 | CacheFilter easier sub-classing via pre- and post-processes | Closed
| CACHE-162 | CacheFilter easier sub-classing via useCache | Closed
| CACHE-272 | Allow disabling of cacheing special http methods (e.g. POST/DELETE/PUT) in CacheFilter | Closed
| CACHE-277 | CacheFilter should allow reentrance over different filter configurations | Closed
| CACHE-283 | Improve oscache.properties loading | Closed
| CACHE-266 | ServletCacheAdministrator no longer a "Servlet Singleton" | Closed
| CACHE-267 | SplitServletOutputStream doesn't pass flush() on to underlying stream | Closed
| CACHE-141 | CacheFilter easier sub-classing | Closed
| CACHE-288 | Error in the HashDiskPersistenceListener byteArrayToHexString | Closed
| CACHE-264 | problem with not escaped group names and their filenames for disk persistence | Closed
| CACHE-255 | AbstractConcurrentReadCache#put(Object key, Object value) may return a wrong value | Closed
| CACHE-249 | Performance improvment for large disk persistence usage | Closed
| CACHE-293 | Allow to specify a different oscache.properties file for Hibernate | Closed
| CACHE-278 | Filter ignores max-age parameter when serving from cache | Closed
| CACHE-284 | Cache.dispatchCacheEntryEvent and Cache.addEventListener implementations are inconsistent | Closed
| CACHE-274 | new method getIntialContext JMSBroadcastingListener | Closed
| CACHE-263 | Run FindBugs 1.1.3 against current source code | Closed
| CACHE-292 | CacheFilter max-age default and error-case initialisation are wrong | Closed
| CACHE-290 | Bad Practice | Closed
| CACHE-178 | JMX Monitoring/Administration via Spring | Closed
| CACHE-252 | Log warning if user tries to set max entries on an unlimited cache | Closed