[jboss-user] [JBoss Portal] - Re: invalidate cache / user per user and window per window

julien@jboss.com do-not-reply at jboss.com
Wed Jan 31 17:03:53 EST 2007


Hello Antoine,

it cannot really be done right now as cached content is stored in the HTTP session of the user (which makes sense since it has the same lifecycle than the user).

The code is located in org.jboss.portal.portlet.aspect.cache.ConsumerCacheInterceptor. Here the content of the cache is retrieved/stored in the PRINCIPAL_SCOPE context. 

This context is the (http session + the principal id) : the http session for the lifecycle management and the principal id for security reasons (so a user does not see the cached content from another user which can happens on logout operations when the session cookie stays the same).

So basically you can modify this interceptor to store instead the content in a shared cache and have that shared cache expose operation through JMX. This interceptor is declared in jboss-portal.sar/META-INF/jboss-service.xml and at this place you can replace the default implementation by your.

For the cache you could use JBoss Cache has a field of your interceptor and expose invalidation methods on the interceptor itself as it is already an MBean.


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4009056#4009056

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4009056



More information about the jboss-user mailing list