How are you comparing the keys? Thanks,
Paulo
Paulo,
Maybe that is the problem. Does the key object need to be comparable or something? (appologies for long post - I've tried to include most of the relevant key related code)
Here are the important parts of the key object we use:
public class RealCacheKey implements CacheKey {
private Collection myMultipartKey = new HashSet(); public RealCacheKey(HttpServletRequest aServletRequest) {
addURIParametersInto(myMultipartKey, aServletRequest);
}<...snip...>
public static void addURIParametersInto(Collection aCollection, HttpServletRequest aRequest) {
Enumeration names = aRequest.getParameterNames();
while (names.hasMoreElements()) {
String aKey = (String) names.nextElement();
if (!isCacheBuster(aKey)) {
String[] values = aRequest.getParameterValues(aKey);
aCollection.add(new MapEntry(aKey, Arrays.asList(values)));
}
}
} private boolean equals(RealCacheKey another) {
return myMultipartKey.equals(another.myMultipartKey);
} public boolean equals(Object another) {
return (another instanceof CacheKey) && equals((RealCacheKey) another);
}
<...snip...>
}The cachekey interface extends serializable. The map entries are serializable and look like this:
public class MapEntry implements java.util.Map.Entry, Comparable, Serializable {
private static final String NULL = "null";
private Object key;
private Object value; public MapEntry(Object aKey, Object aValue) {
super();
this.key = (aKey == null) ? NULL : aKey;
this.value = (aValue == null) ? NULL : aValue;
}<...snip...>
Cheers, Matt.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
