As writen in the StrutsBridge documentation : "The StrutsRenderContext is restored only once". Actually, the StrutsPortletRenderContext is removed from the session just after it's first retoration in the PortletServlet.performActionRenderRequest. I don't understand why. The renderContext is restored during the RenderRequest that immediately follows an ActionRequest so the Struts processor cas get the path of the jsp it must forward to (see PortletServlet.performActionRenderRequest). But after that another renderRequest (without any ActionRequest) can be sent by the portal, for exemple if another portlet is activated. In this case, the RenderRequest can not be processed because the renderContext is no more present in session. That only works if the portal uses cache to render the portlet again but it's not always the case (as I can notice on Liferay). So why is the renderContext restored only once ? is it because we must consider that the portal uses cache ? And what would be the disadvantage of keeping the render context until a new ActionRequest is processed ?
