[jboss-user] [JBoss Portal] New message: "Re: How to clear portlet cache?"

bharath sadanagiri do-not-reply at jboss.com
Tue Feb 23 06:15:11 EST 2010


User development,

A new message was posted in the thread "How to clear portlet cache?":

http://community.jboss.org/message/527863#527863

Author  : bharath sadanagiri
Profile : http://community.jboss.org/people/jayabharath

Message:
--------------------------------------------------------------
Hi,
I got the answer from the following site.
Once ActionResponse.setRenderParameter () is called, parameter will be available between all sub sequent requests. 
http://portals.apache.org/pluto/portlet-1.0-apidocs/javax/portlet/ActionResponse.html
This link https://www.ibm.com/developerworks/mydeveloperworks/blogs/Joey_Bernal/entry/refreshing_a_portlet_on_the?lang=en 
provides a solution. It says instead of setting parameters in renderRequest object in processAction (), set it in session, once used in JSP, remove from session. In this way, you can solve this problem. Move all parameters to session and remove it as soon as you have used in page.
In my case, I moved the navagation key like actionCommand to session and removed in the doView method itself. Please find the piece of code.
in doView() method
============
PortletSession ps = req.getPortletSession();
String actionCommand= (String)ps.getAttribute("actionCommand");
if( ( actionCommand!=null && actionCommand.length()>0 )&& actionCommand.equals("displayCompanyUserReport")){  
 LOG.debug("Forwarding the request to DisplayCompanyUserReport.jsp for the default functionality");
 prd = getPortletContext().getRequestDispatcher("/view/DisplayCompanyUserReport.jsp");
 ps.removeAttribute("actionCommand");
 LOG.debug("Removed actionCommand from the session");
}
in processAction() method
=================
String actionCommand= req.getParameter("actionCommand");
if( ( actionCommand!=null && actionCommand.length()>0 )&& actionCommand.equals("displayCompanyUserReport")){  
 res.setRenderParameter("companyId", req.getParameter("companyId"));
 res.setRenderParameter("actionCommand", "dummy");
 session.setAttribute("actionCommand", "displayCompanyUserReport");
}
Regards,
bharath

--------------------------------------------------------------

To reply to this message visit the message page: http://community.jboss.org/message/527863#527863




More information about the jboss-user mailing list