Hello,

I have done it without using the jboss cache. 
I use only a "signal", that is a parameter in the underlying HttpServletRequest.
I wonder if it is a proper way. (clean, surely not, but working ok ?).

If anyone can confirm it is ok ?
if so, I'll write a wiki about this, with the helper class and test portlets I 
made for this feature.

In the process action of the portlet that want to invalidate the cache of all 
portlet, I set a render parameter.
resp.setRenderParameter(CACHE_SIGNAL_RENDER_PARAM_NAME,
  |                             CACHE_SIGNAL_RENDER_PARAM_VALUE);
  | 

In the ConsumerCacheInterceptor :
 - I get the invocation.getContext() and try to cast this context to an 
AbstractInvocationContext
 - if this cast is ok, I get the HttpServletRequest client request from it
HttpServletRequest httpServletRequest = abstractInvCtxt.getClientRequest();
  | 
 - from this HttpServletRequest, I get the parameter 
httpServletRequest.getParameter(CACHE_SIGNAL_RENDER_PARAM_NAME);

If the value of the parameter says to invalidate the cache, I do so.

The parameter is seen in the ConsumerCacheInterceptor for all the 
windows/portlet of the page... which is great for this feature, but seems 
strange.
The parameter was set for only one portlet, in its processAction method... 

I have made some detailed tests, and it works fine.

anybody can confirm this is ok ? Julien ?
Thanks.


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

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025241
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to