On Fri, 2006-02-17 at 15:06, Jeff Blattman wrote: > this is in regard to the AAPP addition i am working on, that allows > users and weblogs to be removed via HTTP deletes ... > > i am experiencing some strange behavior from the roller web app after > deleting users and weblogs. after deleting a user (though AAPP), i get > an exception if i try to login again: > > java.lang.NullPointerException > > org.roller.presentation.filters.MainPageCacheFilter.doFilter(MainPageCacheFilter.java:156) > > org.roller.presentation.filters.PersistenceSessionFilter.doFilter(PersistenceSessionFilter.java:43) > > > after this exception, the server is dead and any request gives me the > above exception. if i manually remove my cookie for web container, > everything clears up.
this is an Acegi bug of some sort. something gets saved in your session and Acegi apparently tries to use it without checking if it's null. i'm not sure what the proper resolution to this would be, maybe somehow trigger a logout after delete a user? > > also, after removing a weblog, i still see the weblog and entries for > that weblog on the front page. clicking on them gives me an error page > ... but it would be nice to have them disappear immediately. yep, that would be important. > > i assume this is because i need to clear out some caches somewhere. any > pointers on the correct way to do this? it's pretty simple actually. there are a variety of invalidate() methods that are part of the CacheManager class which controls the presentation level cache. when you have an object that has been changed and you want to notify the caches then simply call CacheManager.invalidate(object). it's fine to pass in an object you just deleted, this is how things work when an entry, category, etc, is deleted. -- Allen > > thanks.
