Hi,
We are using JCS and our applications are deployed on Websphere 5.1, which is using 1.4.1 of the IBM JDK. When calling the remove() method, I get the following NullPointer:
at org.apache.jcs.engine.memory.lru.LRUMemoryCache.removeNode(LRUMemoryCache.java:385)
at org.apache.jcs.engine.memory.lru.LRUMemoryCache.remove(LRUMemoryCache.java:240)
at org.apache.jcs.engine.control.CompositeCache.remove(CompositeCache.java:727)
at org.apache.jcs.engine.control.CompositeCache.remove(CompositeCache.java:690)
at org.apache.jcs.access.CacheAccess.remove(CacheAccess.java:373)
I was able to track down what I *think* is a problem in the order of calls. In LRUMemoryCache.remove(Serializable), these two lines of code (~line 292):
itr.remove();
removeNode( ( MemoryElementDescriptor )
entry.getValue() );Same issue with line ~316.
I think these calls should be swapped. It seems that the IBM implemenation of Iterator.remove() behaves slightly differently than Sun's. Has anyone else experienced this problem?
Thanks, Scott
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
