Monday, September 13, 2010

Banishing Browser Caching in WebLogic Portal 10.3.2

I had a problem the other day where a user that was logged out still had their name showing on the screen. I thought the session wasn't being invalidated, but it was actually a case of the browser caching the page. Digging around, I found a solution that, when added to a backing file for the desktop to run during pre-render did the trick:
import com.bea.netuix.servlets.controls.content.backing
.JspBacking;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class NoCacheBacking implements JspBacking

{
public void dispose(){}
public boolean handlePostbackData(HttpServletRequest request,
HttpServletResponse response)
{

return false;
}

public void init(HttpServletRequest request,
HttpServletResponse response){}
public boolean preRender(HttpServletRequest request,
HttpServletResponse response)
{
response.setHeader("Cache-Control" ,
"no-cache, must-revalidate");
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control","no-store");
response.setDateHeader ("Expires", 0);

return false;
}
}

No comments:

Post a Comment